尝试连接到Nuget时,出现以下错误,然后我无法连接:
[nuget.org]无法加载源https://api.nuget.org/v3/index.json的服务索引 。发送请求时发生错误。无法连接到远程服务器连接尝试失败,因为一段时间后连接方未正确响应,或者由于连接的主机未能响应68.232.34.200:443,建立的连接失败
我可以https://api.nuget.org/v3/index.json
在浏览器上访问。
它不是重复的。其他答案不能解决我的问题。
尝试连接到Nuget时,出现以下错误,然后我无法连接:
[nuget.org]无法加载源https://api.nuget.org/v3/index.json的服务索引 。发送请求时发生错误。无法连接到远程服务器连接尝试失败,因为一段时间后连接方未正确响应,或者由于连接的主机未能响应68.232.34.200:443,建立的连接失败
我可以https://api.nuget.org/v3/index.json
在浏览器上访问。
它不是重复的。其他答案不能解决我的问题。
Answers:
您需要将代理设置添加到Nuget.Config文件中。有关详细信息,请参阅此链接:Nuget Config部分和Nuget代理设置。
通过按Win+R并键入来打开注册表编辑器regedit
Enter
导航:
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Client
将DisabledByDefault
键0的值更改为1
然后重新启动Visual Studio。
DisabledByDefault
在Windows 10的默认设置中,此注册表项的值为1。但是,Windows Updater或Visual Studio Updater可能会将其更改为0。这就是Visual Studio无法连接https
安全站点的原因。
尝试浏览NuGet软件包时遇到相同的错误,以解决以下步骤中的相同问题
1-去 %appdata%\NuGet\NuGet.config
2-验证该配置中提到的网址
3-删除不需要的网址
4-重新启动Visual Studio并检查
当尝试通过Jenkins(默认配置为服务,默认使用本地系统帐户)运行nuget.exe时,我偶然发现了这个问题。我已经编辑C:\Windows\System32\config\systemprofile\AppData\Roaming\NuGet\NuGet.Config
了如下文件:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<config>
<add key="http_proxy" value="http://proxy_hostname_or_ip:3128" />
<add key="https_proxy" value="http://proxy_hostname_or_ip:3128" />
</config>
<packageSources>
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
</packageSources>
</configuration>
为了测试命令提示符,可以通过PSTools启动:
psexec -i -s CMD
并在新创建的cmd窗口中运行实际测试(作为本地系统运行):
path_to_nuget\nuget.exe restore "path_to_solution\theSolution.sln"
删除%AppData%\ NuGet \ NuGet.Config并重新启动VS2019为我工作。
值得注意的是,.net核心SSL身份验证存在一个错误,可能会导致此错误。禁用他们最新的网络堆栈实现,为我解决了这个问题。
您可以永久设置此设置,也可以仅使用以下方法启动应用程序:
DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER=0 dotnet ...
某些东西可能会更改您的代理设置,例如Fiddler。关闭Fiddler,然后关闭Visual Studio并再次将其打开。
我正在使用VSO / Azure DevOps。
您也可以直接在浏览器中访问提要URL。您可能最终得到包含如下消息的响应,这可能会使您的诊断更快:
The user does not have a license for the extension ms.feed.
package sources
扩展的访问权限,这将使这项工作有效。似乎有点傻,但是确实如此。
RUN dotnet restore
在中Dockerfile
使用usingdocker-compose up
命令运行时遇到了同样的错误Windows 10
。
我已经尝试了Internet上提供的所有可能的解决方案,并一直关注这个开放的问题。最后,在花费了8个多小时之后,按照上述步骤操作,我得以解决问题。
Docker
从系统卸载Docker
从此链接安装。以下是我的Docker版本
重新启动系统
启动适用于Windows的Docker,Docker
在Windows的搜索栏中搜索。确保它正在运行。
你也应该去Services.msc
,并确保服务Docker Engine
和Docker for Windows Service
运行。
最后,您必须从检查您的Nuget.config文件C:\Users\{Username}\AppData\Roaming\NuGet
。对我来说,该文件的内容如下。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
</packageSources>
<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>
</configuration>
希望这可以帮助。
我尝试连接到私有TFS服务器而不是公共NuGet API服务器时遇到类似的问题。由于某种原因,我在AD服务器和TFS服务器之间遇到问题,因此它总是返回401。NuGet配置文章显示,您可以将AD用户名和密码添加到配置文件中,如下所示:
<packageSourceCredentials>
<vstsfeed>
<add key="Username" value="yourname@company.com" />
<add key="Password" value="this is an encrypted password" >
<!-- add key="ClearTextPassword" value="not recommended password" -->
</vstsfeed>
</packageSourceCredentials>
这不是一个理想的解决方案,更多的是临时的解决方案,直到我弄清楚AD服务器的问题所在,但这应该可以解决。
我在VS2010上使用的是Nuget的旧版本,默认情况下为TLS 1.0,可以通过更改注册表项中配置的.Net框架使用的默认TLS版本来修复。
reg add HKLM\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 /v SystemDefaultTlsVersions /t REG_DWORD /d 1 /f /reg:64
reg add HKLM\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 /v SystemDefaultTlsVersions /t REG_DWORD /d 1 /f /reg:32
费耶
NuGet.org将于6月15日永久删除对TLS 1.0和1.1的支持。请确保您的系统使用TLS 1.2。
您可以参考此链接以获取有关TLS 1.2支持的信息
转到->工具->扩展和更新,并卸载NuGet程序包管理器。.重新启动Visual Studio并重新安装它..每件事都会设置为正常
如果出现此错误,但没有代理服务器,则可以转到
%userprofile%\AppData\Roaming\NuGet\NuGet.Config
并注释以下行:
<config>
<!-- Proxy settings -->
<add key="http_proxy" value="host" />
<add key="http_proxy.user" value="username" />
<add key="http_proxy.password" value="encrypted_password" />
</config>
它对我有用,因为我遇到了该错误,但是我没有代理服务器。
也许这有帮助
对我来说,删除位于C:\ Users \ YourName的.nuget文件夹可以解决此问题。
确保docker在本地计算机上运行。build命令可以运行,但是它需要运行的docker来获取网络数据。
我认为这会有所帮助。
如果使用Visual Studio 2019,如果您未在devenv.exe.config中使用任何默认代理,则只需删除``defaultproxy''部分即可。在VS 2017中,此部分不存在
更改
<defaultProxy enabled="true" useDefaultCredentials="true">
<proxy bypassonlocal="True" proxyaddress="http://<yourproxy:port#>"/>
</defaultProxy>
至
<!--<defaultProxy enabled="true" useDefaultCredentials="true">
<proxy bypassonlocal="True" proxyaddress="http://<yourproxy:port#>"/>
</defaultProxy>-->
否则,请提供适当的代理用户名和密码。