2012-04-10 19 views
6

Könnte jemand bitte freundlich genug sein, mir den besten Weg zu zeigen, ob ein Webservice (ASP.NET) unter einer bestimmten URL existiert?Prüfen, ob ein Webservice existiert

Ich gehe davon aus, dass ein Ansatz etwas mit der Ausgabe einer Anfrage über System.Net.Webclient zu tun hat, aber wie kann ich feststellen, ob es sich um einen gültigen Webservice handelt und welche Art von Anfrage ich ausgeben soll?

BEARBEITEN: Um ein bisschen mehr Kontext hinzuzufügen, ermittle ich, ob ein Webservice existiert, weil ich versuche, ein generisches Tool zu erstellen, das beliebige Webservices verwendet.

+0

, um Web-Service zu verbrauchen, Ihr Werkzeug wird auch WSDL durch Benutzer zur Verfügung gestellt benötigen. Mit WSDL können Sie bestimmen, welche Funktionen der Web Service hat und Sie können sie automatisch aufrufen. – adt

+0

Es gibt keine generische Möglichkeit, dies für einen beliebigen Dienst zu tun. Warum möchten Sie auch einen beliebigen Dienst aufrufen können, wenn soapUI das für Sie erledigt? –

Antwort

4

Der einzige Weg IMHO Lesen der Service sicher sein up ist in der Lage sein, auf dem Dienst eine unschädliche Methode aufrufen und die Antwort zu überprüfen. Das Abrufen der WSDL ist nicht ausreichend.

Es gibt eine ähnliche SO auf das hier in Frage: - How do I test connectivity to an unknown web service in C#?

+0

Gute Verbindung, Prost dafür –

0

Ich würde um WSDL-Dokument bitten. Wenn Sie es zurückbekommen, bedeutet dies, dass der Service existiert und Sie können für implementierte Methoden nach WSDL suchen.

Betrachten wir etwa WS-Discovery-

http://docs.oasis-open.org/ws-dd/discovery/1.1/wsdd-discovery-1.1-spec.html

+0

das ist eigentlich keine antwort, du sagst ihm, lies das manual und das msdn und du findest es. Kennst du die Antwort ? – Aristos

+0

Einige Dienste deaktivieren möglicherweise ausgesetzt wsdl. zum Beispiel: Sicherheitsgründe. – adt

Verwandte Themen