我在Visual Studio程序包管理器输出中得到的错误是:
[nuget.org] Unable to load the service index for source https://www.nuget.org/api/v2.
An error occurred while sending the request.
The remote server returned an error: (405) Method Not Allowed.
在NuGet.config
中配置代理或不配置代理对结果没有影响。
nuget.org是:
<add key="nuget.org" value="https://www.nuget.org/api/v2" />
如果我将环境http_proxy设置为我的公司代理,则可以使用nuget.exe(NuGet Version: 4.7.0.5148
)复制它
nuget list -source nuget.org -ForceEnglishOutput
Unable to load the service index for source https://www.nuget.org/api/v2.
An error occurred while sending the request.
The remote server returned an error: (405) Method Not Allowed.
如果我清除环境http_proxy,则同一命令将开始列出软件包。 (我使用crtl+c
中止了。)
我知道Visual Studio中的程序包管理器与nuget.exe之间是有区别的。
据我了解,两者都使用相同的nuget.config文件。 正如我所看到的,程序包管理器使用了我未检查的代理设置。我找不到那里。
是否存在我未检查的代理设置? 我还想念其他东西吗?
编辑: 当我从Nuget.Config中删除代理设置,然后在Visual Studio中更新程序包源时,我的Nuget.Config设置将被重写以恢复我的代理设置。
答案 0 :(得分:0)
Visual Studio在内存中保留了该配置的副本。每次软件包管理器连接时,它都会重写nuget.config
。
因此,我的问题通过关闭vs2017,手动编辑nuget.config
并重新启动Visual Studio得以解决。