在尝试连接到Nuget时,我得到了下面的错误,然后我无法连接:

无法加载源的服务索引 https://api.nuget.org/v3/index.json。 发送请求时发生错误。 无法连接到远程服务器 连接尝试失败,原因是被连接方在一段时间后没有正确响应,或已建立连接 由于连接的主机未能响应68.232.34.200:443而失败

我可以在浏览器上访问https://api.nuget.org/v3/index.json。


当前回答

如果您是Windows用户,您可以在凭证管理器中删除或更新您的凭证。

Windows 10下,进入如下路径:

控制面板→所有控制面板项→证书管理器

或者在开始菜单的“搜索Windows”部分搜索“凭据管理器”。

然后在凭证管理器中,选择“Windows凭证”。

证书管理器将显示许多项,包括您的outlook和GitHub存储库下的“通用证书”

单击Git右侧的下拉箭头:它将显示编辑和删除选项。如果您删除,证书将在下次获取或拖动时弹出。或者你可以直接在那里编辑凭证。

其他回答

如果您得到此错误,但没有代理服务器,则可以转到

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

它为我工作,因为我得到了这个错误,但我没有代理服务器。

我在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

FYI

6月15日,NuGet.org将永久移除对TLS 1.0和1.1的支持。请确保您的系统使用TLS 1.2。

您可以参考此链接了解TLS 1.2支持的信息

为了支持@Eddie Chen提供的答案(这里),我不得不将http_proxy设置添加到以下文件中:

C: \ Windows \ system32 \漫游配置systemprofile \ AppData \ \鸡块鸡块。配置

<add key="http_proxy" value="http://your_proxy_url:8080" />

如果您看到如下错误,您可能需要设置Azure Artifacts凭据,请参阅Github链接,您可以通过运行powershell脚本或手动安装凭据提供程序。

error :   Response status code does not indicate success: 401 (Unauthorized).

当我试图在本地托管的Gitlab实例中设置NuGet包时遇到了这个错误。错误提示401未经授权的代码。解决方案是用以下方法去除有害源:

nuget source Remove -Name SOURCE_NAME

然后添加相同的源,但这次在命令中指定用户名和密码:

nuget source Add -Name SOURCE_NAME -Source SOURCE_URL -UserName GITLAB_DEPLOY_TOKEN_USERNAME -Password GITLAB_DEPLOY_TOKEN