设置 npm 配置代理 ubuntu 后,npm 不工作
After setting npm config proxy ubuntu, npm not working
Npm 在 运行 这两个命令后崩溃:
$ npm config set proxy http://login:pass@host:port
$ npm config set https-proxy http://login:pass@host:port
当我输入另一个命令(例如 npm install
或 npm build
时,我的终端显示此错误:
URIError: URI malformed
at decodeURIComponent (native)
at Url.parse (url.js:195:19)
at Object.urlParse [as parse] (url.js:84:5)
at Object.validateUrl [as validate] (/usr/share/npm/node_modules/nopt/lib/nopt.js:164:13)
at validate (/usr/share/npm/node_modules/nopt/lib/nopt.js:212:24)
at validate (/usr/share/npm/node_modules/nopt/lib/nopt.js:179:11)
at /usr/share/npm/node_modules/nopt/lib/nopt.js:101:12
at Array.map (native)
at /usr/share/npm/node_modules/nopt/lib/nopt.js:67:15
at Array.forEach (native)
/usr/share/npm/lib/npm.js:34
throw new Error('npm.load() required')
^
Error: npm.load() required
at Object.npm.config.get (/usr/share/npm/lib/npm.js:34:13)
at exit (/usr/share/npm/lib/utils/error-handler.js:60:40)
at process.errorHandler (/usr/share/npm/lib/utils/error-handler.js:178:3)
at emitOne (events.js:77:13)
at process.emit (events.js:169:7)
at process._fatalException (node.js:223:26)
试试这个(在 linux 中有效)
设置代理运行:
npm config set proxy http://username:password@host:port
要取消设置代理 运行:
npm config set proxy null
检查代理是否设置运行:
npm config get proxy
我在 运行 npm install
上遇到了同样的错误。
问题出在 .npmrc
文件中的代理密码中。它包含 %
符号。
所有特殊符号必须是URL-encoded。参见 issue #7353。
当我将 %
更改为 %25
时,它开始正常工作。
Npm 在 运行 这两个命令后崩溃:
$ npm config set proxy http://login:pass@host:port
$ npm config set https-proxy http://login:pass@host:port
当我输入另一个命令(例如 npm install
或 npm build
时,我的终端显示此错误:
URIError: URI malformed
at decodeURIComponent (native)
at Url.parse (url.js:195:19)
at Object.urlParse [as parse] (url.js:84:5)
at Object.validateUrl [as validate] (/usr/share/npm/node_modules/nopt/lib/nopt.js:164:13)
at validate (/usr/share/npm/node_modules/nopt/lib/nopt.js:212:24)
at validate (/usr/share/npm/node_modules/nopt/lib/nopt.js:179:11)
at /usr/share/npm/node_modules/nopt/lib/nopt.js:101:12
at Array.map (native)
at /usr/share/npm/node_modules/nopt/lib/nopt.js:67:15
at Array.forEach (native)
/usr/share/npm/lib/npm.js:34
throw new Error('npm.load() required')
^
Error: npm.load() required
at Object.npm.config.get (/usr/share/npm/lib/npm.js:34:13)
at exit (/usr/share/npm/lib/utils/error-handler.js:60:40)
at process.errorHandler (/usr/share/npm/lib/utils/error-handler.js:178:3)
at emitOne (events.js:77:13)
at process.emit (events.js:169:7)
at process._fatalException (node.js:223:26)
试试这个(在 linux 中有效)
设置代理运行:
npm config set proxy http://username:password@host:port
要取消设置代理 运行:
npm config set proxy null
检查代理是否设置运行:
npm config get proxy
我在 运行 npm install
上遇到了同样的错误。
问题出在 .npmrc
文件中的代理密码中。它包含 %
符号。
所有特殊符号必须是URL-encoded。参见 issue #7353。
当我将 %
更改为 %25
时,它开始正常工作。