HarmonyOS 鸿蒙Next 项目启动npm报错self signed certificate in certificate chain
HarmonyOS 鸿蒙Next 项目启动npm报错self signed certificate in certificate chain (node:34208) Warning: Setting the NODE_TLS_REJECT_UNAUTHORIZED environment variable to ‘0’ makes TLS connections and HTTPS requests insecure by disabling certificate verification.
- Use
node --trace-warnings ...
to show where the warning was created
FetchError: request to https://repo.harmonyos.com/npm/@ohos/coverage/-/@ohos/coverage-1.0.7.tgz failed, reason: self signed certificate in certificate chain
- at ClientRequest.<anonymous> (C:\Users\l0527034.hvigor\wrapper\tools\node_modules\pnpm\dist\pnpm.cjs:60853:18)
- at ClientRequest.emit (node:events:513:28)
- at TLSSocket.socketErrorListener (node:_http_client:494:9)
- at TLSSocket.emit (node:events:513:28)
- at emitErrorNT (node:internal/streams/destroy:157:8)
- at emitErrorCloseNT (node:internal/streams/destroy:122:3)
- at processTicksAndRejections (node:internal/process/task_queues:83:21)
FetchError: request to https://repo.harmonyos.com/npm/@ohos/hvigor-arkts-base/-/@ohos/hvigor-arkts-base-2.4.2.tgz failed, reason: self signed certificate in certificate chain
- at ClientRequest.<anonymous> (C:\Users\l0527034.hvigor\wrapper\tools\node_modules\pnpm\dist\pnpm.cjs:60853:18)
更多关于HarmonyOS 鸿蒙Next 项目启动npm报错self signed certificate in certificate chain的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next项目中,启动npm时遇到"self signed certificate in certificate chain"错误,通常是由于npm在请求HTTPS资源时,遇到了自签名证书或证书链中的问题。这种错误通常发生在开发环境中,尤其是当使用本地或内部服务器时,这些服务器的SSL证书可能是自签名的,而不是由受信任的证书颁发机构(CA)签发的。
要解决此问题,可以通过以下步骤绕过证书验证:
-
设置npm的strict-ssl为false: 在命令行中执行以下命令,禁用npm的严格SSL验证:
npm config set strict-ssl false
-
设置环境变量NODE_TLS_REJECT_UNAUTHORIZED为0: 在启动npm时,设置环境变量
NODE_TLS_REJECT_UNAUTHORIZED
为0,以忽略证书验证:export NODE_TLS_REJECT_UNAUTHORIZED=0
或者在Windows的命令提示符中:
set NODE_TLS_REJECT_UNAUTHORIZED=0
-
更新npm的CA证书: 如果问题仍然存在,可以尝试更新npm的CA证书:
npm install -g npm
上述方法可以暂时绕过证书验证问题,但在生产环境中不建议使用这些方法,因为这会降低安全性。
更多关于HarmonyOS 鸿蒙Next 项目启动npm报错self signed certificate in certificate chain的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在启动 HarmonyOS 鸿蒙Next 项目时,如果遇到 self signed certificate in certificate chain
错误,通常是由于 npm 在尝试连接到 registry 时无法验证 SSL 证书。以下是解决方案:
-
临时忽略 SSL 证书验证: 运行以下命令来暂时忽略 SSL 证书验证:
npm config set strict-ssl false
-
更新 npm 和 Node.js: 确保你使用的是最新版本的 npm 和 Node.js,以兼容最新的证书链。
-
配置 npm 使用正确的 registry: 检查并设置 npm 为官方 registry:
npm config set registry https://registry.npmjs.org/
-
检查系统证书: 确保你的系统上安装了最新的 CA 证书。对于 Windows 用户,可以通过更新系统来获取最新的证书。
-
使用代理: 如果你在公司网络下,可能需要配置代理:
npm config set proxy http://your.proxy.server:port npm config set https-proxy http://your.proxy.server:port
完成以上步骤后,重新启动项目即可解决此问题。