2017-09-26 27 views
1

我正在使用服務工作人員使用https而不是https來管理我的angular 4項目。但是,我收到此錯誤: 服務工作者註冊失敗:DOMException:註冊ServiceWorker失敗:提取腳本時發生SSL證書錯誤。http上的服務工作人員:提取腳本時發生SSL證書錯誤

這是我的服務worker.js

module.exports = { 
    navigateFallback: '/index.html', 
    stripPrefix: 'dist', 
    root: 'dist/', 
    staticFileGlobs: [ 
     'dist/index.html', 
     'dist/**.js', 
     'dist/**.css', 
     'dist/assets/image/**.*', 
     'dist/assets/image/client-home-carousel/**.*', 
    ] 
}; 

一種在角cli.json:

"assets": [ 
      "assets", 
      "favicon.ico", 
      "service-worker.js" 
     ], 

回答

1

服務人員只能通過HTTPS連接來使用。你在用嗎?另外,HTTPS證書必須有效。

作爲旁註,您顯示的代碼不是您的service-worker.js。該代碼是一些SW庫的一些參數和選項,然後根據這些選項生成service-worker.js。很可能您的實際service-worker.js位於dist目錄中,並作爲構建過程的一部分進行更新。

+0

謝謝你的信息。我不知道。但有沒有可能有服務工作者https? – Melchia

+0

@Melchia不,這是不可能的。無論使用何種瀏覽器,SW都只能在HTTPS連接之上工作。您可以在本地開發中使用HTTP,並繞過HTTPS限制/規則,請查看https://www.chromium.org/blink/serviceworker/service-worker-faq如果它對您有幫助,請標記我的答案正確:-) – pate