【问题标题】:Is there a way to get the original HTTP response string from a WebException?有没有办法从 WebException 中获取原始 HTTP 响应字符串?
【发布时间】:2010-10-13 07:46:50
【问题描述】:

我有一个通过 HTTP 与自定义后端服务器通信的 Web 应用程序。服务器以 XML 格式提供响应,我使用 Linq-to-XML 来解析结果。如果服务器无法处理查询,它将发回 400 错误请求标头,其中包含有关问题的详细信息。即

HTTP/1.1 400 错误请求(无效查询)

在客户端,我使用 XDocument.Load(uri) 来检索和解析响应。当一个错误的请求发生时,它会抛出一个 WebException。问题是 Message 属性设置为“Bad Request”。我不知道它是否截断了响应字符串,或者它是否只是解析了 400 代码并自行生成了消息。有没有办法获取原始响应字符串?

【问题讨论】:

    标签: .net http linq-to-xml


    【解决方案1】:

    您可以从 WebException 中提取原始响应。我们在 RestSharp 中这样做是因为非 200 状态代码在实际使用中并不完全例外。 You can see an example here.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-25
      • 2013-08-20
      • 2015-11-10
      • 2015-03-04
      相关资源
      最近更新 更多