有什么办法可以禁用strict MIME type checking
在 Chrome 中。
实际上我正在跨域发出 JSONP 请求。它在 Firefox 上工作正常,但是在使用 chrome 时,它在控制台中出现一些错误。
拒绝执行来自 ' 的脚本https://example.com https://example.com' 因为它的 MIME 类型('text/plain')不可执行,并且启用了严格的 MIME 类型检查。
它在 Mozilla 中完美运行。问题仅在 chrome 中出现
这是请求的响应标头..
Cache-Control:no-cache, no-store
Connection:Keep-Alive
Content-Length:29303
Content-Type:text/plain;charset=ISO-8859-1
Date: xxxx
Expires:-1
Keep-Alive:timeout=5
max-age:Thu, 01 Jan 1970 00:00:00 GMT
pragma:no-cache
Set-Cookie:xxxx
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options:nosniff
X-Frame-Options:SAMEORIGIN
解决我的想法:
外部设置内容类型为application/javascript
服务器应使用正确的 JSONP MIME 类型进行响应application/javascript
你的请求应该告诉 jQuery 你正在加载 JSONPdataType: 'jsonp'
请参见这个答案 https://stackoverflow.com/questions/24528211/refused-to-execute-script-from-because-its-mime-type-application-json-is了解更多详情!
你也可以看看这个 https://webmasters.stackexchange.com/a/50017因为它解释了为什么加载.js
文件与text/plain
行不通的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)