ajax請求靜態文件返回 405 Method not allowed

背景:

用html寫個jqgrid的例子,直接請求一個json文件,部署到IIS上瀏覽,jqgrid沒顯示數據。


排查:

一開始懷疑是不是IIS不支持json,但看了MIME設置有json,而且直接訪問可以,然後又查了查,有說WebDAV的謂詞限制改成全部的、有配置文件不對的,JSON過長等等,最後發現跟我遇到的情況都沒啥關係。


結果:

真正的原因是“ Apache、IIS、Nginx等絕大多數web服務器,都不允許靜態文件響應POST請求,否則會返回“HTTP/1.1 405 Method not allowed”錯誤。”,而jqgird請求數據的默認方式是post,也就是說正常寫後臺代碼返回json的話是沒問題的,但我又比較懶,只想寫個純前端小Demo,後來想到了ASP和IIS都是微軟自家的東西,抱着試試的心裏,把.json後綴名改成.asp,結果成功了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章