Ich habe versucht, einen neuen Endpunkt in einem Service hinzuzufügen, der unter IIS gehostet wird, aber nicht in der Lage war, es für den letzten Tag oder so herauszufinden.Mehrere Endpunkte unter IIS
Das ist mein Verständnis:
- Sie so lange mehrere Endpunkte unter IIS haben können, wie sie eindeutige Adressen haben.
- Sie könnten eine Basisadresse zuweisen, aber es wird durch das Setup des virtuellen Verzeichnisses in IIS außer Kraft gesetzt.
Mein virtuelles Verzeichnis http://localhost/WcfCert/
<services>
<service name="WcfCertServer.Service1" behaviorConfiguration="WcfCertServer.Service1Behavior">
<endpoint address="" binding="wsHttpBinding" contract="WcfCertServer.IService1"/>
<endpoint address="test" binding="wsHttpBinding" contract="WcfCertServer.IService1"/>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
</service>
</services>
ist, kann ich den Dienst bringen mit http://localhost/wcfcert/service1.svc
aber http://localhost/wcfcert/test/service1.svc/test nichts in IE oder die Client-Anwendung zurückkehren
was bin ich hier fehlt?
Edit:
Also habe ich weitere Tests, und hier ist, was ich entdeckt.
Wenn ich WcfTestClient.exe starte und entweder http://localhost:1523/Service1.svc oder http://localhost:1523/Service1.svc/mex hinzufüge, wird der Endpunkt unter dieser Adresse hinzugefügt. also hier ist meine Frage sollte nicht http://localhost:1523/Service1.svc nur den ersten Endpunkt darstellen? Warum sollte diese Adresse hinzugefügt werden, um beide Endpunkte anzuzeigen?
aber wenn ich versuche, http://localhost:1523/Service1.svc/test hinzufügen ich
Error: Cannot obtain Metadata from http://localhost:1523/Service1.svc/test If this is a Windows (R) Communication Foundation service to which you have access, please check that you have enabled metadata publishing at the specified address. For help enabling metadata publishing, please refer to the MSDN documentation at http://go.microsoft.com/fwlink/?LinkId=65455.WS-Metadata Exchange Error URI: http://localhost:1523/Service1.svc/test Metadata contains a reference that cannot be resolved: ' http://localhost:1523/Service1.svc/test '.
Sendera:BadContextToken
The message could not be processed. This is most likely because the action ' http://schemas.xmlsoap.org/ws/2004/09/transfer/Get ' is incorrect or because the message contains an invalid or expired security context token or because there is a mismatch between bindings. The security context token would be invalid if the service aborted the channel due to inactivity. To prevent the service from aborting idle sessions prematurely increase the Receive timeout on the service endpoint's binding.HTTP GET Error URI: http://localhost:1523/Service1.svc/test There was an error downloading ' http://localhost:1523/Service1.svc/test '. The request failed with HTTP status 400: Bad Request.
ich habe ein ähnliches Problem, das ich würde gerne erhalten eine Lösung für das. Der einzige Unterschied zu dem, was Sie beschreiben, scheinen s sein, dass ich eine '400 Schlechte Anfrage' ohne Text bekomme. Ich folge der Beschreibung auf http://msdn.microsoft.com/de-us/library/ms733766.aspx, die im Kommentar angibt, dass die resultierende URL in Ihr Beispiel übersetzt werden würde - http: //localhost/wcfcert/service1.svc/test. Es funktioniert auch nicht für mich. –
Die URL funktioniert nicht in IE (.../Service1.svc/test). Aber Proxy erstellen fügen Sie den gleichen Endpunkt, der es funktioniert. Siehe http://msdn.microsoft.com/en-us/library/ms751515(v=vs.110).aspx –