异常:请求因HTTP状态400失败:Bad Request。
基本情况是这样,一个ASP.NET应用程序,后台调用WebService,装在自己的机器上一切都正常。上传到一个服务器以后,就会报出Title中描述的异常。最后一条堆栈会跟踪到SoapHttpClientProtocol.ReadResponse()这个函数。
上网搜了一下,大家没有什么明确的方法,但是都确认应该是Web.Config中的问题,最大的可能性就是WebService的地址有问题。
我的Web.Config中有以下设置:
于是我远程连接到目标服务器,然后直接用浏览器打开http://localhost/Test/TestWebService.asmx,果不然,浏览器提示我输入验证信息,因为那个服务器要访问外网必须通过代理服务器,访问localhost也需要。
把localhost改成实际内网的IP地址,问题也就解决了。
大家遇到类似的问题,尤其是以前好用,换了服务器就不好用的情况,也来检查一下WebService的地址吧~~~
上网搜了一下,大家没有什么明确的方法,但是都确认应该是Web.Config中的问题,最大的可能性就是WebService的地址有问题。
我的Web.Config中有以下设置:
<appSettings>
<add key="localhost.mywebservice" value="http://localhost/Test/TestWebService.asmx"/>
</appSettings>
<add key="localhost.mywebservice" value="http://localhost/Test/TestWebService.asmx"/>
</appSettings>
于是我远程连接到目标服务器,然后直接用浏览器打开http://localhost/Test/TestWebService.asmx,果不然,浏览器提示我输入验证信息,因为那个服务器要访问外网必须通过代理服务器,访问localhost也需要。
把localhost改成实际内网的IP地址,问题也就解决了。
大家遇到类似的问题,尤其是以前好用,换了服务器就不好用的情况,也来检查一下WebService的地址吧~~~