我正在尝试创建一个无服务器项目。但是当在cmd上给出serverless
命令时,它会给出一个错误。请帮我解决这个问题。
首先,我使用'npm install -g serverless
'命令安装了serverless。然后我给了'serverless
'命令。因此,在cmd上显示以下错误:
C:GeethmamyFilesserverlessTutorial>serverless
Creating a new serverless project
? What do you want to make? AWS - Node.js - Starter
? What do you want to call this project? aws-node-project
Environment: win32, node 16.15.0, framework 3.18.2, plugin 6.2.2, SDK 4.3.2
Docs: docs.serverless.com
Support: forum.serverless.com
Bugs: github.com/serverless/serverless/issues
Error:
RequestError: self signed certificate in certificate chain
at ClientRequest.<anonymous> (C:Usersgeethma.rathnayakeAppDataRoamingnpmnode_modulesserverlessnode_modulesgotdistsourcecoreindex.js:962:111)
at Object.onceWrapper (node:events:642:26)
at ClientRequest.emit (node:events:539:35)
at ClientRequest.emit (node:domain:475:12)
at ClientRequest.origin.emit (C:Usersgeethma.rathnayakeAppDataRoamingnpmnode_modulesserverlessnode_modules@szmarczakhttp-timerdistsourceindex.js:43:20)
at TLSSocket.socketErrorListener (node:_http_client:454:9)
at TLSSocket.emit (node:events:527:28)
at TLSSocket.emit (node:domain:475:12)
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)
at TLSSocket.onConnectSecure (node:_tls_wrap:1532:34)
at TLSSocket.emit (node:events:527:28)
at TLSSocket.emit (node:domain:475:12)
at TLSSocket._finishInit (node:_tls_wrap:946:8)
at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:727:12)
如果您使用的是雇主提供的机器,他们可能已经安装了自签名SSL证书,以便连接到内部系统或运行车队管理软件。
您可以通过在命令前加上NODE_TLS_REJECT_UNAUTHORIZED=0 serverless
或永久地加上npm config set strict-ssl false
来覆盖Node中的严格检查。
我已经检查了Aaron的答案,但它不适合我的情况。
我这边的问题是我公司的VPN,因为它阻止发送/接收数据。我按照下面的步骤解决了我的问题。
<<p>解决方案/strong>- 尝试禁用VPN。
- 重新执行命令
- 验证是否有效
还要确保您的IAM用户具有必要的权限,通过在AWS的IAM用户页面中附加必要的policy
来执行此操作。