Bonjour à tous,
J'essaye de me connecter sur le webservice décrit ici: https://api.betfair.com/global/v3/BFGlobalService.wsdl
Nous avons donc un webservice BFGlobalService avec une méthode login qui prend un LoginReq et renvoi un LoginResp (qui hérite de APIResponse et contient donc un APIResponseHeader).
Si j'appelle la méthode login depuis une application Winforms, aucun souci, je recupère bien tout les éléments.
Si maintenant j'appelle la meme méthode depuis une application Windows Mobile 6, je recois bien un LoginResp en retour, mais dans lequel le header est null.
J'ai donc essayé de surchager la methode GetWebResponse de mon objet Proxy créé par wsdl comme suit:
En debugage, après le ReadToEnd(), s contient bien ma reponse Soap complète, avec le header:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 protected override WebResponse GetWebResponse(WebRequest request) { WebResponse resp = base.GetWebResponse(request); StreamReader reader = new StreamReader(resp.GetResponseStream()); String s = reader.ReadToEnd(); Debug.WriteLine(s); reader.Close(); return resp; }
par contre le Debug.WriteLine(s) m'affiche le debut suivit d'une exception:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <?xml version="1.0" encoding="UTF-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:n2="http://www.betfair.com/publicapi/types/global/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><n:loginResponse xmlns:n="http://www.betfair.com/publicapi/v3/BFGlobalService/"><n:Result xsi:type="n2:LoginResp"><header xsi:type="n2:APIResponseHeader"><errorCode xsi:type="n2:APIErrorEnum">OK</errorCode><minorErrorCode xsi:nil="1"></minorErrorCode><sessionToken xsi:nil="1"></sessionToken><timestamp xsi:type="xsd:dateTime">2008-01-21T17:25:10.875Z</timestamp></header><currency xsi:nil="1"></currency><errorCode xsi:type="n2:LoginErrorEnum">INVALID_USERNAME_OR_PASSWORD</errorCode><minorErrorCode xsi:nil="1"></minorErrorCode><validUntil xsi:type="xsd:dateTime">0001-01-01T00:00:00.000Z</validUntil></n:Result></n:loginResponse></soap:Body></soap:Envelope>
Je ne voit pas très bien comment regler ce probleme de header null, ni de quel coté chercher...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <?xml version="1.0" encoding="UTF-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:n2="http://www.betfair.com/publicapi/types/global/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><n:loginResponse xmlns:n="http://www.betfair.com/publicapi/v3/BFGlobalService/"><n:Result xsi:type="n2:LoginResp"><header xsi:type="n2:APIResponseHeader"><errorCode xsi:type="n2:APIErrorEnum">OK</errorCode><minorErrorCode xsi:nil="1"></minorErrorCode><sessionToken xsi:nil="1"></sessionToken><timestamp xsi:type="xsd:dateTime">2008-01-21T17:25:10.875Z</timestamp></header><currency xsi:nil="1"></currency><errorCode xsi:type="n2:LogiA first chance exception of type 'System.Net.WebException' occurred in System.dll
Si quelqu'un a une idée je suis preneur...
Merci d'avance
n0n0
Partager