У меня есть служба REST, используемая клиентом .Net WCF.
При обнаружении ошибки служба REST возвращает неверный запрос HTTP 400 с телом ответа, содержащим сериализованные детали JSON.
Если я выполню запрос, используя Fiddler, Javascript или непосредственно из C #, я легко получу доступ к телу ответа при возникновении ошибки.
Однако я использую WCF ChannelFactory
с 6 довольно сложными интерфейсами. Исключением, выданным этим прокси-сервером, всегда является ProtocolException
, без каких-либо полезных подробностей.
Есть ли способ получить тело ответа, когда я получаю эту ошибку?
Обновление
Я понимаю, что существует множество разных способов сделать это с помощью .Net и что есть другие способы получить ответ об ошибке. Их полезно знать, но не отвечайте на этот вопрос.
Службы REST, которые мы используем, изменятся, и когда они сделают, сложные интерфейсы будут обновлены. Использование ChannelFactory
с новыми интерфейсами означает, что мы получим исключения во время компиляции (а не во время выполнения) и сделаем их намного проще для поддержки и обновления кода.
Можно ли получить тело ответа об ошибке HTTP-статуса при использовании каналов WCF?