今天在serviceWork中經過fetch獲取一個跨域的JS是報錯了:javascript
難道該JS不支持跨域? 看下該js的rquest/response:
java
打眼一看這個js支持跨域啊,但仔細看看發現請求頭裏有個非CORS安全頭部:intervention
,而響應頭裏也沒有把intervention
加入到access-control-allow-headers
裏。web
intervention
?正好這個頭裏有連接,點進入看看,原來是chrome本身加的。具體緣由能夠見參考1chrome
不使用document.write了唄,能夠用其餘動態添加JS的方法,如:跨域
var s = document.createElement('script'); s.src = 'xxxxxxx'; var firstScript = document.getElementsByTagName('script')[0]; firstScript.parentNode.insertBefore(s, firstScript);
在響應頭裏把intervention
加入到access-control-allow-headers
裏。安全