Я боролся с этим последние несколько дней. Я изучил проблему и попробовал опубликованные решения. Однако это не сработало. У меня есть метод REST WCF Post, который имеет
[OperationContract(Name = "ImportRawJson")]
WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.WrappedRequest,
ResponseFormat = WebMessageFormat.Json, RequestFormat=WebMessageFormat.Json,
UriTemplate = "ImportRawJson/username/{username}/password/{password}/fileName/{fileName}")]
string ImportRawJson(string username, string password, string fileName, string jsonStream);
Я могу использовать это через веб-клиент. Однако, когда я пытаюсь позвонить через Fiddler, как показано ниже, параметр body всегда приводит к нулю, и я получаю исключение.
Fiddler: отправьте http: //localhost
/TimesheetService/Timesheet.svc/ImportRawJson/username/user/password/pwd/fileName/testfiddler
Заголовки запроса: User-Agent: Fiddler Host: localhost Content-Length: 32 Content-Type: application / json; charset = utf-8
Тело запроса: {"jsonStream": {"ImportRaw": {"TestXml": {"xml": "test"}}}}
Ошибка: HTTP / 1.1 400 Bad Request Cache-Control: private Content-Length: 127 Content-Type: application / json; charset = utf-8 Сервер: Microsoft-IIS / 7.5 X-AspNet-Version: 4.0.30319 Set-Cookie: ASP.NET_SessionId = wh4qxcu1x0vmiv45mmzuuaup; путь = /; HttpOnly X-Powered-By: ASP.NET Дата: 7 мая 2013 г., 14:00:58 GMT
{"ErrorCode": "Ошибка", "Сообщение": "Процедура или функция ожидают параметр 'jsonStream', который не был предоставлен."}
Любая помощь относительно того, как я могу передать параметр тела. Я действительно ценю. Я застрял на этом этапе. Пожалуйста помоги!! заранее спасибо