设置代理解决nuget下载包时的网络超时问题

  • Post author:
  • Post category:其他


相信大家在visual studio上都遇到过下载nuget包时网络超时的问题,经常处在撸码2分钟,下包2个钟的尴尬情况。

解决办法基本上就是3个:

  1. 自己在nuget服务器上手动下载好包,再在vs中手动导入。该方法不太现实,因为现在的包几乎都有其依赖包及其依赖子包,要下载一个包,往往也需要下载一系列的其他包,手动将全部的依赖包都下载一遍费时费力不现实。
  2. 使用国内源,通常可行。但国内源不是实时与官方源更新的,可能导致某个包下载时,其依赖包得跳回到官方源才能进行下载,同样会有网络超时问题。或者国内源并不存在某依赖包。
  3. 设置代理,缺点是需要一个能科学上墙的代理服务器地址。

本文即通过设置代理的方法来解决nuget的超时问题,在%appdata%\NuGet\NuGet.Config文件中的config节点下加入

<add key=”http_proxy” value=”http://192.168.2.51:25000″ /> 即可,如下图所示。注:ip和端口需替换为自己的代理地址和端口。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <config>
    <add key="http_proxy" value="http://192.168.2.51:25000" />
  </config>
  <packageRestore>
    <add key="enabled" value="True" />
    <add key="automatic" value="True" />
  </packageRestore>
  <bindingRedirects>
    <add key="skip" value="False" />
  </bindingRedirects>
  <packageManagement>
    <add key="format" value="0" />
    <add key="disabled" value="False" />
  </packageManagement>
  <packageSources>
    <add key="腾讯源" value="https://mirrors.cloud.tencent.com/nuget/" />
    <add key="官方源" value="https://nuget.org/api/v2/" />
    <add key="Microsoft Visual Studio Offline Packages" value="C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\" />
  </packageSources>
</configuration>



版权声明:本文为hello443原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。