Сброс соединения по пиру (502) в RESTful Web Service - PullRequest
3 голосов
/ 21 февраля 2012

У меня есть служба RESTful WCF (.NET 3.5), в которой есть функция, которая должна возвращать список сведений о пациенте в соответствии с предоставленными мною критериями поиска. Я сталкиваюсь с проблемой, при которой, если я предоставляю критерии поиска, которые возвращают одну деталь пациента, она работает нормально; но когда я предоставляю критерий поиска, который возвращает информацию о нескольких пациентах, я получаю сообщение об ошибке «Сброс соединения по пиру 502». Я использую Fiddler для его проверки, поскольку запрос и ответ представлены в формате JSON.

Вот ошибка, которую я получаю:

<HEAD><TITLE>Connection reset by peer</TITLE></HEAD>
<BODY BGCOLOR="white" FGCOLOR="black"><H1>Connection reset by peer</H1><HR>
<FONT FACE="Helvetica,Arial"><B>
Description: Connection reset by peer</B></FONT>
<HR>
<!-- default "Connection reset by peer" response (502) -->
</BODY>

Я почти уверен, что в какой-то момент он работал нормально, когда вернул два набора данных о пациенте, но внезапно перестал работать без какой-либо веской причины. И я включил Журналы приложений, используя мониторинг работоспособности, он показывает, что приложение запущено и ошибок нет как таковых. Другая функция, которая является функцией входа в систему, работает отлично.

Ответы [ 2 ]

4 голосов
/ 21 февраля 2012

Я не уверен насчет решения, но иногда ошибки сериализации WCF могут оставить вас «сбросом соединения по одноранговой сети», если у вас есть DataContract, который включает тип, который не сериализуем.Проверьте, все ли типы в контракте данных являются сериализуемыми.

1 голос
/ 29 февраля 2012

Разобрался с проблемой.У меня IsRequired установлено значение true в классе ответа Data Member, который выдавал ошибку

...