-1
Docs聲稱:Chrome擴展:Serviceworker跨源未能
通過添加主機或主機匹配圖案(或兩者)的清單文件的權限部分,延伸可以請求訪問的外部的遠程服務器它的起源
我≪ manifest.json的≫:
{"manifest_version":2,"name":"","version":"0","permissions":["http://example.org/"],"background":{"scripts":["asd"]}}
<ASD>:
navigator.serviceWorker.register('sdf.js',{scope:'http://example.org/'}).then(x=>console.log('done', x))
<sdf.js>:
addEventListener('fetch', e=> e.respondWith(new Response('url: '+e.request.url,{headers:{'content-type':'text/html'/*, etc*/}})))
予加載使用≪加載已解壓的擴展≫代碼;它墜毀沒有任何錯誤信息:
顯然代碼"permissions":["http://example.org/"]
墜毀的擴展。
如何設置Chrome擴展跨源ServiceManager的權限?是否有必要的Chrome標誌?
只是沒有執行,我猜。嘗試在運行站點URL的tab/iframe的內容腳本中執行此操作。 – wOxxOm
@wOxxOm,用[code here](https://jsfiddle.net/jd2qvtgp/)嘗試,但是未被捕獲(承諾)DOMException:無法註冊ServiceWorker:提供的scriptURL的原點('chrome-extension: // pgmcjkmokcicmebpjlmblnhfnfgooghm')與當前原點('https://example.org')不匹配。任何其他策略? – Pacerier
如果您面臨明顯的崩潰,請[查看日誌](https://www.chromium.org/for-testers/enable-logging)。 – Xan