nuget.org:无法加载服务索引

问题描述 投票:0回答:2

这并不是真正的重复这个问题,因为提供的答案不起作用,并且我正在使用 Bootcamp 在 MacBook 上使用 Windows-7。

尝试在 Nuget 包管理器中搜索任何包时出现以下错误:

严重性代码描述项目文件行抑制状态 错误 [nuget.org] 无法加载源的服务索引

https://api.nuget.org/v3/index.json。 发送请求时发生错误。 底层连接已关闭:发送时发生意外错误。 无法从传输连接读取数据:现有连接被远程主机强制关闭。 现有连接被远程主机强制关闭

我的 NuGet 配置文件 (

%appdata%/nuget

):

<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" /> </packageSources> </configuration>
    
nuget
2个回答
5
投票
Nuget.org 开始强制使用 TLS 1.2(并放弃了对 TLS 1.1 和 1.0 的支持)。检查下面的DisabledByDefault 值,

注册表中的 HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client。

要启用支持,请确保您已安装更新并打开支持:

reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client" /v DisabledByDefault /t REG_DWORD /d 0 /f /reg:32


reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client" /v DisabledByDefault /t REG_DWORD /d 0 /f /reg:64


reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client" /v Enabled /t REG_DWORD /d 1 /f /reg:32


reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client" /v Enabled /t REG_DWORD /d 1 /f /reg:64


    


0
投票
好吧..让我试试这是否可以拯救你的一天。我遇到了同样的问题,我尝试了这篇文章中提到的所有内容以及下面提到的一些相关文章(5-6年前开始),但不幸的是没有任何效果......直到我有一个

技巧解决了我的问题。这可能是一个临时解决方案,但如果此故障是由某些 Windows 更新或网络策略或防病毒等引起的,则可以节省数小时!

我的情况: 我的几台使用 VS 2022 (17.7.5) 的开发 PC(Win11、Win10)之一在从 Visual Studio 构建解决方案时开始显示此错误:

[nuget] 无法加载源的服务索引

https://api.nuget.org/v3/index.json。发送时发生错误 的请求。无法解析远程名称:'api.nuget.org'

有趣的是,在其他电脑上也有同样的情况。我花了很多时间调试并遵循以下线程。重新启动了很多次,重新启动..没有任何帮助。即使我尝试下载 VS 2019 来确认,也出现了同样的问题。

所以我意识到这是我的一台电脑上的网络问题,它无法解析 api.nuget.org 的 DNS。我已经编码了 20 多年,但 IP 配置和其他网络内容仍然让我感到害怕!

我的解决方案: 我在一台好的电脑上运行了这个(命令提示符):

C:\Windows\System32>ping api.nuget.org Pinging part-0010.t-0009.t-msedge.net [13.107.246.38] with 32 bytes of data: Reply from 13.107.246.38: bytes=32 time=71ms TTL=57 Reply from 13.107.246.38: bytes=32 time=19ms TTL=57 ...
并将其添加到坏电脑上的主机文件中(C:\Windows\System32\drivers tc):

13.107.246.38 api.nuget.org
...然后繁荣!!!

相关帖子(我尝试了所有答案,但对我来说

不起作用):

  • Nuget 连接尝试失败“无法加载源的服务索引”
  • Visual Studio - Nuget - 无法加载源的服务索引
  • NuGet 无法加载源的服务索引 身份验证失败
  • NuGet 包管理器无法加载服务索引
© www.soinside.com 2019 - 2024. All rights reserved.