当前位置: 首页 > 知识库问答 >
问题:

在公司代理背后使用npm。派克靴

国斌斌
2023-03-14

我需要通过npm下载几个软件包,但我们的公司代理配置是。pac文件(我在windows上)

我已经试过了

npm config set proxy http://mydomain\username:password@1.2.3.4:8181/proxy.pac
npm config set https-proxy http://mydomain\username:password@1.2.3.4:8181/proxy.pac

npm config set proxy http://1.2.3.4:8181/proxy.pac
npm config set https-proxy http://1.2.3.4:8181/proxy.pac

但这行不通...

有什么建议吗?谢谢

共有3个答案

毛成济
2023-03-14

下载您的. pac文件。在任何编辑器中打开它并查找PROXY="PROXY X. X. X. X: 80;。您可能有许多代理,复制其中任何一个并运行以下终端命令:

npm config set proxy http://X.X.X.X:80
npm config set https-proxy http://X.X.X.X:80

现在您应该可以安装任何软件包了!

雷方伟
2023-03-14

在internet explorer lan设置中查找pac文件的url,并从配置的url下载pac文件。pac文件只是一个javascript文件,其函数名为FindProxy-ForURL,在不同的场景中返回不同的代理主机。

尝试在该pac文件中找到您认为用于一般Web流量的主机,并将其插入C:\User\中的. npmrc

proxy=http://<username>:<pass>@proxyhost:<port>
https-proxy=http://<uname>:<pass>@proxyhost:<port>

即使您可以在公司机器上使用您的域和用户名登录,代理也很可能不需要用户活动目录域名,只需要用户名和密码(可能与您的Active Directory登录不同)

不要忘记摆弄转义的特殊密码字符。

韦宏扬
2023-03-14

我刚刚遇到了一个非常类似的问题,我无法让npm在我们的代理服务器后面工作。

我的用户名的格式为“域\用户名”-包括代理配置中的斜杠,导致出现正斜杠。因此,请输入以下内容:

npm config set proxy "http://domain\username:password@servername:port/"

然后运行这个npm config get agent返回this:超文本传输协议://domain/username:password@servername: port/

因此,为了解决此问题,我改为URL编码反斜杠,因此输入以下内容:

npm config set proxy "http://domain%5Cusername:password@servername:port/"

有了这个,代理访问被修复了。

 类似资料:
  • 问题内容: 我需要通过npm下载几个软件包,但我们的公司代理配置是.pac文件(我在Windows上) 我已经尝试过 要么 但这行不通… 有什么建议吗?谢谢 问题答案: 我有一个非常类似的问题,我无法让npm在我们的代理服务器后面工作。 我的用户名的格式为“域\用户名”-代理配置中的斜杠导致出现正斜杠。因此输入: 然后运行此命令将返回以下内容: http:// domain / username:

  • 如何从公司代理后面通过RemoteWebDriver连接到selenium网格(如BrowserStack)? 被测应用程序位于代理之外,可以从BrowserStack自由访问。 这个使用Selenium RemoteWebDriver隐藏公司代理(Java)stackoverflow的问题问了同样的问题,但我无法按照公认的答案回答。

  • 问题内容: 如何从公司代理后面通过RemoteWebDriver连接到硒网格,例如Br​​owserStack? 被测应用程序在代理之外,可以从BrowserStack免费访问。 问题答案: 我设法根据链接的问题中的可接受答案得到了一些解决方案,如果有人遇到相同问题,这是我的实现: 例 MyHttpClientFactory

  • 问题内容: 我试图在一些远程自动化服务(Sauce Labs,Browserstack等)上运行Selenium测试,并遇到通过我的公司防火墙攻击其API的问题。 请注意,我要测试的应用程序 不在 此防火墙后面,可以公开访问。 问题似乎是Selenium的管道将url中的user:key解释为代理凭据,因此它永远不会离开我们的网络。是否有任何特定的技巧来配置它?似乎在后台使用了Apache Htt

  • 问题内容: 是否可以在使用NTLM身份验证的HTTP代理后面运行?如果是,如何设置服务器的地址和端口,用户名和密码? 问题答案: 我通过以下方式解决了此问题(操作系统:Windows XP SP3): 1. 下载CNTLM安装程序并运行它。 2. 在cntlm.ini中找到并填写这些字段。 不要填写该字段,在文本文件中存储未加密的密码永远不是一个好主意。 3. 打开控制台,然后键入以下命令以生成密

  • 我正在尝试从我们的网络访问cloud Elasticsearch安装,这需要使用外部请求的代理。这是我用来传递Elasticsearch凭据和代理设置的代码片段: CredentialsProvider CredentialsProvider=new BasicCredentialsProvider();CredentialsProvider.SetCredentials(AuthScope.An