在过去的几天里,我一直在为此苦苦挣扎。我已经研究了这个问题并尝试了发布的解决方案。然而它没有奏效。我有 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 参数调用时,总是会导致 null 并且我得到一个异常。
提琴手:发布 http: localhost
///TimesheetService/Timesheet.svc/ImportRawJson/username/user/password/pwd/fileName/testfiddler
请求标头:用户代理:提琴手主机:localhost 内容长度:32 内容类型:应用程序/json;字符集=utf-8
请求正文:{“jsonStream”:{“ImportRaw”:{“TestXml”:{“xml”:“test”}}}}
错误:HTTP/1.1 400 错误请求缓存控制:私有内容长度:127 内容类型:应用程序/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 日期:2013 年 5 月 7 日星期二 14:00:58 GMT
{"ErrorCode":"Error","Message":"过程或函数需要参数 'jsonStream',但未提供。"}
关于如何传递 body 参数的任何帮助。我真的很感激。我被困在这一点上。请帮忙!!提前致谢