阅读.npmrc文件中的代理变量,但它不起作用。尽量避免手动下载所有需要的包并安装。
当前回答
当我在代理设置中没有http/http前缀时,即使代理主机和端口是正确的值,npm也会失败。只有在添加协议前缀后,它才能正常工作。
其他回答
最后,我已经设法解决了这个问题背后的代理与AD认证。我必须执行:
npm config set proxy http://domain%5Cuser:password@proxy:port/
npm config set https-proxy http://domain%5Cuser:password@proxy:port/
URL编码任何特殊字符(如反斜杠或#)是非常重要的 在我的情况下,我必须编码
反shashly %5C,这样域\user将是域%5Cuser #使用%23%0A,这样密码#2将是密码%23%0A2
我还添加了以下设置:
npm config set strict-ssl false
npm config set registry http://registry.npmjs.org/
$ npm config set proxy http://login:pass@host:port
$ npm config set https-proxy http://login:pass@host:port
虽然我在配置中设置了代理,但问题并没有解决 这个对我很有用:
npm——http -proxy http://XX.AA.AA.BB:8080安装cordova插件 npm——代理http://XX.AA.AA.BB:8080安装
在cmd或GIT Bash或其他提示符下使用以下命令
$ NPM配置代理http://192.168.1.101:4128
$ NPM配置http -proxy http://192.168.1.101:4128
其中192.168.1.101为代理IP, 4128为端口。根据您的代理设置进行更改。这对我很有用。
我是这样解决这个问题的:
我运行这个命令: NPM配置strict-ssl为false 然后设置npm运行http,而不是https: NPM配置注册表http://registry.npmjs.org/ 然后我使用下面的语法安装包: NPM——proxy http://username:password@cacheaddress.com.br:80安装packagename
如果代理不要求您进行身份验证,则跳过用户名:密码部分
编辑:我的一个朋友刚刚指出,你可以通过设置HTTP_PROXY和HTTPS_PROXY环境变量来让NPM在代理后工作,然后正常地发出命令NPM install express(例如)
EDIT2:正如@ bstruthers评论的那样,请记住,包含“@”的密码不会被正确解析,如果包含@,则将整个密码放在引号中
推荐文章
- ReferenceError: description没有定义NodeJs
- 将一个二进制的NodeJS Buffer转换为JavaScript的ArrayBuffer
- AngularJS只适用于单页应用程序吗?
- 如何在vue-cli项目中更改端口号
- 如何查看npm包的大小?
- 同步和异步编程(在node.js中)的区别是什么?
- 如何编辑通过npm安装的节点模块?
- “node_modules”文件夹应该包含在git存储库中吗
- 使用package.json在全局和本地安装依赖项
- this.libOptions.parse不是一个函数
- 对嵌套文件夹运行npm install的最好方法是什么?
- 节点Multer异常字段
- 在Ubuntu上安装Bower
- 很好的初学者教程socket.io?
- CALL_AND_RETRY_LAST分配失败-进程内存不足