這兩天,部門其中的一個重頭開發分支,CRM上線了。其中用到了Jquery 通過 Ajax 調用 webService。測試的時候報了一個莫名其妙的404錯誤。經過分析后,404是因為web.config配置的報錯頁面 Error.aspx 本身就不存在,所以這個錯誤,使得查找真正原因的時候有一定的迷惑性,說到底還是經驗欠缺的表現。
排除這個錯誤后,真正的錯誤原因是報了 500 錯誤,本地是正確的;直接進服務器測試,也是正確的;開瀏覽器遠程調用,就報錯。這樣就很明顯了,Google關鍵字:Jquery 遠程調用 webService報錯,解決方案一大堆,而且都很簡單,也都是管用的,這里記錄一下吧:
原來web.config里面默認Post設置是不允許遠程調用webservice,改變一下配置就可以了。
如果想在遠程可以正常調用,需要修改web.config,在system.web節下面加上下面一段話即可。
<webServices > <protocols > <add name="HttpSoap"/> <add name="HttpPost"/> <add name="HttpGet"/> <add name="Documentation"/> </protocols> </webServices>