npm 安裝套件出現 unable to get local issuer certificate 錯誤

前言

比較嚴謹的公司網路環境,多半都會有自己的憑證
在安裝特定套件如 puppeteer, playwright 時,就會出現unable to get local issuer certificate
網路上查到的解法都是npm config set strict-ssl false
在某些情況下是可以的,但像 playwright 這類比較特別的套件會使用require('https')來執行request()。導致仍無法順利下載

解決方法

最理想的情況當然是增加憑證。但管理網路的人並不一定會願意配合
故可以在cmd執行npm i之前,先執行set NODE_TLS_REJECT_UNAUTHORIZED=0來關閉https,通常就可以成功安裝了!

1
2
set NODE_TLS_REJECT_UNAUTHORIZED=0
npm i

安全提醒:關閉 SSL 檢查有被竊聽或導向惡意網站的可能,請留意其風險!

補充:install playwright behiend firewall

官方有提到解決方式。增加特定參數來安裝

1
HTTPS_PROXY=https://192.0.2.1 npm   install playwright

頁面位置可見參考資料

參考資料

npm 安裝套件出現 unable to get local issuer certificate 錯誤
playwright 官方文件 / playwright behiend a firewall