记一次坑爹的 “跨域” 问题
生活随笔
收集整理的這篇文章主要介紹了
记一次坑爹的 “跨域” 问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
由于(Android)webview的地址是file:// ,我猜測這是file相關的協議,而不是走http 協議的請求。
?
后端 API.NET 的 web.config 設置如下:
<system.webServer><validation validateIntegratedModeConfiguration="false" /><handlers><remove name="ExtensionlessUrlHandler-Integrated-4.0" /><!--<remove name="OPTIONSVerbHandler" />--><remove name="TRACEVerbHandler" /><add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" /></handlers><httpProtocol><customHeaders> <add name="Access-Control-Allow-Origin" value="*" /><add name="Access-Control-Allow-Methods" value="*" /><add name="Access-Control-Allow-Headers" value="Content-Type" /></customHeaders></httpProtocol> </system.webServer>事實上,在webview中壓根是不走?<httpProtocol>?這些協議的。(猜測),所以一直正常的運行著,
直到我走了HTTP協議~才發現出現了問題。
總而言之~
請務必注意必須完美符合<customHeaders>的三項,筆者由于headers多設置了一個項,而這個項并不是Content-Type,導致了請求發不出去,
而瀏覽器卻幫我發送了OPTIONS。讓我誤以為我的POST變成了OPTIONS請求,繞了一大圈,事實上也學了不少HTTP相關的內容。
http://www.ruanyifeng.com/blog/2016/04/cors.html
也多虧了?spy-debugger 這個插件。幫助我調試了。
總結
以上是生活随笔為你收集整理的记一次坑爹的 “跨域” 问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在popup窗口中俘获事件的缺陷修复
- 下一篇: 浅谈在Java开发中的枚举的作用和用法