2016-08-02 6 views
-1

http://wishisdone.com/IphoneService.svc/echoWithPost Key: S Wert: WillkommenWCF-Dienst funktioniert nicht für Post-Service

Unterhalb der Fehler:

service help page

for constructing valid requests to the service. The exception message is 'The incoming message has an unexpected message format 'Raw'. The expected message formats for the operation are 'Xml', 'Json'. This can be because a WebContentTypeMapper has not been configured on the binding. See the documentation of WebContentTypeMapper for more details.'. See server logs for more details. The exception stack trace is:

+1

Verwenden Sie bitte zuerst die Autorisierung, da Ihre Methoden öffentlich zugänglich sind. –

+0

ist es eine Genehmigung für die Öffentlichkeit zugänglich. Bitte verwenden Sie den Postboten für den Zugriff auf diesen Dienst: http://wishisdone.com/IphoneService.svc/echoWithPost Schlüssel: S Wert: Willkommen –

+0

[haben Sie diesen Link verifiziert] (http://stackoverflow.com/questions/26123619/wcf -service-error-incoming-message-hat-eine-unerwartete-message-format-raw-exp) mit ähnlichem Problem – Keppy

Antwort

0

Parameter im JSON-Format sein shold { "EmployeeId" : "601"}. Verwenden Sie firefox restclient, um den Fehler zu überprüfen.

+0

Ich habe Restclient dafür verwendet, aber is wirft Fehler: Der Server hat einen Fehler bei der Verarbeitung der Anfrage festgestellt. Informationen zum Erstellen gültiger Anforderungen für den Dienst finden Sie auf der Service-Hilfeseite. Die Ausnahmebedingungsnachricht lautet 'Es gab ein Fehler beim Überprüfen des Startelements des Objekts vom Typ System.String. Unerwartetes Zeichen '.' Weitere Informationen finden Sie in den Serverprotokollen. –

+0

Können Sie mir bitte bestätigen, was der genaue Fehler ist? –

+0

in Restclient müssen Sie Kopfzeile Inhaltstyp hinzufügen: Application-Json. –

0

Dies wird funktionieren.

HTTP POST: http://wishisdone.com/IphoneService.svc/echoWithPost?content=Hello

Dies ergab mich Status 200 OK. XML zurückgegeben wird

<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 
    Post: 
</string> 

Der Grund dafür ist, dass die String ein primitiver Datentyp ist und so, auch wenn die HTTP-Anforderung eine POST sollte sie als Abfragezeichenfolgeflag angehängt werden.

+0

Sir zeigt öffentliche String echoWithPost (String s) { zurück "Post:" + s ; } Aber nicht Ihre Nachricht, die Sie in Abfragezeichenfolge eingeben. –