Fiddler – ReadResponse失败:服务器未返回此请求的响应
这是我在几次处理RESTful Web服务后第一次遇到这种错误。 我发现很难找出错误的原因,希望你能帮助我。
我有登录服务的这个属性
[WebGet(UriTemplate = "Login?username={username}&password={password}&ip={ip}", ResponseFormat = WebMessageFormat.Json)]
使用fiddler来使用该服务:
GET http:// localhost:3445 / Authenticate / Login?username = jsm&password = a&ip = 1
提琴手回应:
[Fiddler] ReadResponse() failed: The server did not return a response for this request.
我不确定它是否由Content-type: application/json
引起,因为当我尝试将其更改为xml时:
[WebGet(UriTemplate = "Login?username={username}&password={password}&ip={ip}", ResponseFormat = WebMessageFormat.Xml)]
它给了我这个结果:
有点奇怪。 我做错了什么? 我必须返回json对象..谢谢!
错误的原因是束数据类型的加载(请参阅上面的xml数据预览)。 Json有大约65K对象的限制,在我的项目中它超出了限制。 所以最终的解决方案是创建DTO – “数据传输对象”,它将最小化要传递的数据。
由于不同的问题,我有几次同样的错误。 主要原因是wcf无法序列化对象。
在我的第一种情况下,这是因为,返回的对象不是服务中声明的正确对象。 该服务应该已经返回了student对象,但是我正在返回studentExtended对象(inheritance对象)。
在我的第二种情况下,这是因为dateTime属性的forms是不可序列化的(它是null)。 所以我把它改成了DateTime.now,所以之后它再次运行了
问候
我有同样的问题Fiddler] ReadResponse()失败了: 我的解决方案是:在IIS中,回收应用程序所在位置的应用程序池。
我正在使用Xampp和Installed Fiddler …发生了相同的错误…
我只运行一次IIS (由于运行Xampp而停止)并且一切都很顺利。 🙂
我遇到了同样的问题。 最后,找到了为返回对象定义Contract类型的问题。
我已将[DataMember]替换为[EnumMember],如下所述:
[DataContract] public enum DiscountType { [EnumMember] NONE = 0, [EnumMember] PERCENTAGE_DISCOUNT = 1 }
这修复了我的“[Fiddler] ReadResponse()失败”错误,这花了我半天的努力。