2009-03-19 11 views
0

Wir verfügen über eine ASP.Net-Webanwendung, die Web-Services aufruft, die im selben virtuellen Verzeichnis bereitgestellt werden. Der Aufruf kehrt ohne Probleme auf dem Entwicklungsrechner zurück. Wenn es jedoch auf dem Produktionsserver bereitgestellt wird, gibt es einen Fehler 400 Fehlgeschlagen zurück. Der Aufruf wurde durch Erstellen einer WebRequest und Festlegen des SoapAction-Headers und anschließend durch WebResponse.GetRepsonseStream() zum Abrufen der SOAP-Antwort ausgeführt. Vorübergehend haben wir das Problem behoben, indem wir den Aufruf mithilfe des generierten Proxys durchgeführt haben.Einen SOAP-Web-Service-Aufruf mit einem WebRequest durchführen

Kann jemand vorschlagen, Web-Services mit WebRequest und WebResponse aufzurufen, ohne auf den Fehler 400 zu stoßen?

Antwort

1

Ich verstehe nicht, warum Sie so tun. Ich würde eine Webreferenz zu der Dienst-WSDL hinzufügen und das Framework den Rest erledigen lassen! Nach meiner Erfahrung mit Webdiensten und ASP.NET ist dies der einfachste Weg.

+0

Die Website ist im Grunde ein Test für den Webdienst und wir wollten die zurückgegebene SOAP XML für Werte überprüfen. Die Verwendung von WebRequest/WebResponse war einfacher. – etsuba

+0

Ich würde immer noch mit der traditionellen ASP.NET-Web-Service-Implementierung gehen. Dann können Sie ein separates Dienstprogramm wie einen Netzwerkpaket-Sniffer/Trace verwenden, um die Anfrage/Antwort zu protokollieren. –