Fiddler - сбой ReadResponse: сервер не вернул ответ на этот запрос - PullRequest
4 голосов
/ 24 февраля 2012

Это был первый раз, когда я сталкивался с такой ошибкой после нескольких раз работы с веб-сервисом RESTful. Мне трудно отследить причину ошибки, надеюсь, вы поможете мне.

У меня есть этот атрибут для службы входа

[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

enter image description here

Ответ Fiddler:

[Fiddler] ReadResponse() failed: The server did not return a response for this request.  

enter image description here

Я не уверен, вызвано ли это, Content-type: application/json, потому что, когда я пытаюсь изменить его на xml:

[WebGet(UriTemplate = "Login?username={username}&password={password}&ip={ip}", ResponseFormat = WebMessageFormat.Xml)]  

Это дает мне такой результат:

enter image description here

Какая странная. Что я сделал не так? Я должен вернуть объект JSON .. Спасибо!

Ответы [ 5 ]

4 голосов
/ 22 марта 2012

Причиной ошибки является загрузка групповых типов данных (см. Предварительный просмотр данных xml выше). Ограничение Json составляет около 65 тыс. Объектов, и в моем проекте оно превышает ограничение. Таким образом, окончательное решение - создать DTO - «Объект передачи данных», который минимизирует объем передаваемых данных.

1 голос
/ 30 июня 2015

У меня была одна и та же ошибка пару раз из-за разных проблем.Основная причина в том, что wcf не может сериализовать объект.

в моем первом случае это произошло потому, что возвращаемый объект не является правильным объектом, который указан в сервисе.служба должна была вернуть объект студента, но я возвращал объект studentExtended (унаследованный объект).

во втором случае это было из-за свойства dateTime, которое было в форме и не было сериализуемым (оно было нулевым)поэтому я изменил его на DateTime.now, чтобы после этого он снова работал

С уважением

0 голосов
/ 16 января 2017

Я столкнулся с той же проблемой. Наконец, обнаружена проблема в определении типа контракта для возвращаемого объекта.

Я заменил [DataMember] на [EnumMember], как описано ниже:

[DataContract]
public enum DiscountType
{
    [EnumMember]
    NONE = 0,
    [EnumMember]
    PERCENTAGE_DISCOUNT = 1
}

Это исправило мою ошибку «[Fiddler] ReadResponse () fail», которая заняла у меня полдня.

0 голосов
/ 25 февраля 2014

Я использовал Xampp и установленный Fiddler ... Произошла та же ошибка ...

Я запускаю IIS только один раз (поскольку он был остановлен из-заработает Xampp) и все прошло нормально.:)

0 голосов
/ 28 сентября 2013

У меня была та же проблема Fiddler] ReadResponse () не удалось :.Для меня было принято следующее решение: в IIS перезапустите пулы приложений, в которых находится приложение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...