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

nuget.org: Unable to load the service index

提问人:skm 提问时间:4/18/2022 更新时间:10/18/2023 访问量:15723

问:

这并不是这个问题的真正重复,因为提供的答案不起作用,而且我正在使用 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(英语:NuGet)

评论

0赞 mxmissile 4/18/2022
您甚至可以在 Windows 安装时访问该 URL 吗?
0赞 skm 4/18/2022
@mxmissile 是的,我可以在浏览器中访问该 URL
0赞 Ivan Kozlov 5/5/2022
@skm我有同样的问题,但我在 VirtualBox Win 7 VM 上使用 VS。你解决了你的问题吗?
0赞 Ivan Kozlov 5/5/2022
@skm这个答案帮助了我 stackoverflow.com/a/65424896/7991817

答:

5赞 Dilan Perera 8/2/2022 #1

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

评论

1赞 Jawid Hassim 11/28/2022
这篇文章救了我的命
0赞 Joe Eng 12/1/2022
更新VS为我修复了它
0赞 Dilan Perera 6/23/2023
如果它解决了您的问题,请将其标记为答案。
1赞 Debraj Banerjee 10/18/2023 #2

井。。让我试试这是否能挽救你的一天。我遇到了同样的问题,我尝试了这篇文章中提到的所有内容以及下面提到的一些相关帖子(始于 5-6 年前),但不幸的是没有任何效果。直到我有一个解决我问题的技巧。这可能是一个临时解决方案,但如果此故障是由某些 Windows 更新或网络策略或防病毒软件引起的,则可以节省数小时!

我的情况:我为数不多的几台装有 VS 2022 (17.7.5) 的开发电脑(Win11、Win10)之一在从 Visual Studio 构建解决方案时开始显示此错误:

[nuget] 无法加载源 https://api.nuget.org/v3/index.json 的服务索引。发送时出错 请求。无法解析远程名称:“api.nuget.org”

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

C:\Windows\System32> ping api.nuget.org
Ping request could not find host api.nuget.org. Please check the name and try again.

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

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

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
...

并将其添加到坏 PC 上的主机文件中 (C:\Windows\System32\drivers\etc):

13.107.246.38   api.nuget.org

...和繁荣!!

相关文章(我尝试了所有答案,但对我不起作用):

评论

0赞 SomeGenericDev 12/19/2023
这是我在互联网上尝试了几个小时后唯一对我有用的东西。