javascript 如何解决代理后安装npm时的连接问题?

2w2cym1i  于 2023-05-12  发布在  Java
关注(0)|答案(2)|浏览(143)

我按照指示:https://www.electronjs.org/docs/tutorial/first-app
我输入了mkdircdnpm init。他们都工作得很好。出现了一个名为package.json的文件。
然后输入npm install --save-dev electron。发生了一些错误。

lala@ubu:~/projects/electron/my-app 17:20:34
$ npm install --save-dev electron

> core-js@3.6.4 postinstall /home/lala/projects/electron/my-app/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"

Thank you for using core-js ( https://github.com/zloirock/core-js ) for polyfilling JavaScript standard library!

The project needs your help! Please consider supporting of core-js on Open Collective or Patreon: 
> https://opencollective.com/core-js 
> https://www.patreon.com/zloirock 

Also, the author of core-js ( https://github.com/zloirock ) is looking for a good job -)

> electron@8.0.0 postinstall /home/lala/projects/electron/my-app/node_modules/electron
> node install.js

(node:5950) UnhandledPromiseRejectionWarning: RequestError: connect ETIMEDOUT 13.250.177.223:443
    at ClientRequest.<anonymous> (/home/lala/projects/electron/my-app/node_modules/got/source/request-as-event-emitter.js:178:14)
    at Object.onceWrapper (events.js:313:26)
    at ClientRequest.emit (events.js:228:7)
    at ClientRequest.origin.emit (/home/lala/projects/electron/my-app/node_modules/@szmarczak/http-timer/source/index.js:37:11)
    at TLSSocket.socketErrorListener (_http_client.js:406:9)
    at TLSSocket.emit (events.js:223:5)
    at emitErrorNT (internal/streams/destroy.js:92:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
    at processTicksAndRejections (internal/process/task_queues.js:81:21)
(node:5950) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:5950) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN my-app@1.0.0 No description
npm WARN my-app@1.0.0 No repository field.

+ electron@8.0.0
added 85 packages from 91 contributors and audited 102 packages in 87.419s

2 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities

执行上述指令后,出现一个文件夹node_modules和一个文件package-lock.json
看起来我已经成功地安装了依赖项。但为什么会出现一个连接错误?
我不能直接访问github.com(13.250.177.223),但我的代理工作。
我已经按如下方式配置了代理,但连接错误仍然存在。
My ~/.bashrc

export HTTP_PROXY=http://127.0.0.1:8123/
export HTTPS_PROXY=http://127.0.0.1:8123/
export http_proxy=http://127.0.0.1:8123/
export https_proxy=http://127.0.0.1:8123/
$ cat ~/.npmrc 
proxy=http://127.0.0.1:8123/
http-proxy=http://127.0.0.1:8123/
https-proxy=http://127.0.0.1:8123/
noproxy=localhost,127.0.0.1,192.168.,10.
strict-ssl=false

node v12.14.1 npm v6.13.7
如何减少错误?
感谢您的任何帮助!

pbossiut

pbossiut1#

尝试从代理后面安装电子节点模块的解决方案。

npx cross-env ELECTRON_GET_USE_PROXY=true GLOBAL_AGENT_HTTPS_PROXY=http://username:password@host:8080 npm install -D electron@latest
  • 如果需要,这里username:password是您的网络用户名和密码。
  • 这里host:8080是代理服务器主机名和端口号。
  • cross-env是另一个支持命令行变量的节点模块(可选)。
46scxncf

46scxncf2#

这对我很有效

npx cross-env ELECTRON_GET_USE_PROXY=true GLOBAL_AGENT_HTTPS_PROXY=http://localhost:3128 npm install electron

酱料:https://github.com/electron/electron/issues/20739#issuecomment-577981558

相关问题