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()失败”错误,这花了我半天的努力。