app内调用 WebService 提示 500 (Internal Server Error) 的原因及解决办法
android经过一段时间的开发,打算连接正式库进行测试。但是APP显示 500,而通过网页浏览就一直正常。
各种设置IIS均没能解决问题,就怀疑是请求的问题,经过确认,对方是通过post请求。
get请求一般没有问题,只有post请求会报错500。
原因如下:
在 ASP.NET 开发中,WebService部署成站点之后,如果在本地测试WebService可以运行,在远程却显示“测试窗体只能用于来自本地计算机的请求”或 者"The test form is only available for requests from the local machine. ",那是因为没有开启远程访问。
解决方案如下:
遇到此类情况的解决办法如下:
在web.config的<system.web></system.web>中间加入如下配置节内容:
<webServices>
<protocols>
<add name="HttpSoap"/>
<add name="HttpPost"/>
<add name="HttpGet"/>
<add name="Documentation"/>
</protocols>
</webServices>
之后就可以正常调用 WebService 了。