我正在尝试连接到公司的Web服务,但我收到了BadRequest值。我想这不是一个大问题,我不是在寻求如何解决这个糟糕请求的帮助。我遇到的问题是如何获得有关导致它的更多细节。所以我有这个HttpResponseMessage类变量:
HttpResponseMessage response = c.Post(address, content);
//...fill in content
response = cAssessments.Post(addressInfo, content); //return "Bad Response"
我将其发送到具有适当内容的服务器,然后我收到400回复,说明“错误请求”。我的问题是如何深入挖掘该repsonse变量以确切了解导致它的原因。我正在考虑对我要提供信息的服务有一定的依赖性,所以我会假设它在某处。但是我应该研究的那个变量里面的东西是什么?例如:
“response.StatusCode”给了我400代码。我可以研究哪些其他属性?
感谢任何帮助。
答案 0 :(得分:0)
使用一些可能出错的有用提示或信息填充BadRequest响应的内容完全取决于响应的Web服务。你不能在你身边做任何事情。
答案 1 :(得分:0)
尝试内容本身,也是原始请求的网址。
根据您要求反对的API,它们可能包含在回复内容中特别导致400的内容。
您要求的格式(json vs xml vs whatever)
答案 2 :(得分:0)
这完全取决于服务返回的内容。要检查这一点,您可以阅读响应流:
using (var stream = response.GetResponseStream ()){
using (var reader = new StreamReader(stream, Encoding.UTF8)
{
var text = reader.ReadToEnd();
// text contains your info
}
}
调试的另一个有用选项是使用postman之类的内容,您可以在其中粘贴请求并立即查看完整响应
如果回复中没有包含任何有用的信息,那么您就会陷入困境,但您无法做到这一点。