Error en el intento de conexión de Nuget "No se puede cargar el índice de servicio para la fuente"

86

Al intentar conectarme a Nuget, aparece el siguiente error y luego no puedo conectarme:

[nuget.org] No se puede cargar el índice de servicio para la fuente https://api.nuget.org/v3/index.json . Se produjo un error al enviar la solicitud. No se puede conectar con el servidor remoto Un intento de conexión falló porque la parte conectada no respondió correctamente después de un período de tiempo, o la conexión establecida falló porque el host conectado no respondió 68.232.34.200:443

Puedo acceder a https://api.nuget.org/v3/index.jsonen mi navegador.

No es un duplicado. Las otras respuestas no resuelven mi problema.

Darth Vader
fuente
Dado que ha publicado el mismo problema en otro hilo ( stackoverflow.com/questions/41157069/nuget-not-connecting ), continúe con este problema en su hilo anterior. Y también seguiré este tema en su hilo anterior.
Weiwei
¿Tiene proxy configurado en su máquina? ¿O la variable "http_proxy" configurada en la variable de entorno?
Eddie Chen - MSFT
Sí, tengo varios proxies ejecutándose en mi máquina. Cuando instalé fiddler. Pude acceder a nuget. Tengo un proxy corporativo.
DarthVader
3
¡Acabo de reiniciar mi estudio visual y funcionó!
Shridhar R Kulkarni

Respuestas:

30

Debe agregar la configuración del proxy en el archivo Nuget.Config. Consulte este enlace para obtener más detalles: sección de configuración de Nuget y configuración de proxy de Nuget .

Eddie Chen - MSFT
fuente
Para mí fue que tenía una variable de entorno http_proxy configurada que estaba mal.
Martin Brown
2
Yo también tuve ese problema y lo eliminé en la línea de comandos, pero ahora el problema ha vuelto, pero no tengo un proxy configurado actualmente. ¿Alguna idea de lo que aún podría estar saliendo mal?
Dan Csharpster
3
atascado con el mismo problema
Rıfat Erdem Sahin
1
El archivo de configuración debe estar presente en% AppData% \ NuGet \ o C: \ Users \ WindowsLoginName \ AppData \ Roaming \ NuGet
VivekDev
21

Abra el Editor del Registro presionando Win+ Ry escribaregedit Enter

Navegar a:

\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Client

Cambiar el valor de la DisabledByDefaultclave 0 a 1

Luego reinicie Visual Studio.

Leer más sobre TLS
Leer más sobre este problema wrt NuGet

Razi
fuente
3
Mejore su respuesta explicando por qué esto podría resolver el problema.
BigM
Gracias. Esto funcionó para mí. Recibía el siguiente error "Se produjo un error al restaurar los paquetes NuGet: no se puede cargar el índice de servicio para la fuente api.nuget.org/v3/index.json . [Nuget.org] No se puede cargar el índice de servicio para la fuente api.nuget. org / v3 / index.json . Se produjo un error al enviar la solicitud. La solicitud fue cancelada: no se pudo crear el canal seguro SSL / TLS ".
chanakya sankritayana
Funcionó. ¿Pero por qué? ¿Qué podría causar este problema? ¿Cómo se atrevió algo a cambiar el registro así? ¿Y para qué?
maní
2
Según mi conocimiento , este DisabledByDefaultvalor de clave de registro es 1 en la configuración predeterminada de Windows 10. sin embargo, el actualizador de Windows o el actualizador de Visual Studio pueden cambiarlo a 0. Es por eso que Visual Studio no pudo conectar httpsun sitio seguro.
Razi
1
¡Este truco realmente resolvió el problema y mis otras aplicaciones .NET también!
0xabc
10

Recibí el mismo error al intentar navegar por el paquete NuGet, para resolver el mismo paso siguiente a continuación

1- ir a %appdata%\NuGet\NuGet.config

2- Verifique las URL mencionadas en esa configuración

3- Elimina la URL que no es necesaria

4- Reinicie Visual Studio y verifique

Shradha Shilvant
fuente
8

Me encontré con este problema al intentar ejecutar nuget.exe a través de Jenkins (configurado como un servicio, de forma predeterminada con la cuenta del sistema local). He editado un C:\Windows\System32\config\systemprofile\AppData\Roaming\NuGet\NuGet.Configarchivo que se parece a lo siguiente:

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

Para probar el símbolo del sistema se puede iniciar a través de PSTools :

psexec -i -s CMD

y ejecución de prueba real en las ventanas de cmd recién creadas (se ejecuta como sistema local):

path_to_nuget\nuget.exe restore "path_to_solution\theSolution.sln"
Alexei
fuente
7

Ir

Configuración (Configuración global de su PC)> Red e Internet> Proxy> Configuración automática de proxy> y establezca Detectar configuraciones automáticamente en apagado.

TANQUE VISHAL
fuente
3

Si recibe este error, pero no tiene un servidor proxy, puede ir a

%userprofile%\AppData\Roaming\NuGet\NuGet.Config

Y comenta estas líneas:

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

Me funcionó porque recibí ese error, pero no tengo un servidor proxy.

Marlon Adarme
fuente
3

Vale la pena señalar que hubo un error con la autenticación SSL .net core que podría causar esto. La desactivación de su última implementación de pila de redes resolvió este problema.

Puede configurar esto de forma permanente o simplemente iniciar su aplicación usando:

DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER=0 dotnet ...
firetiger77
fuente
3

En mi caso es porque no tengo conexión a internet y está intentando andamiaje

hosam hemaily
fuente
Igual que aquí. Estuve desconectado durante un tiempo y apareció el mismo problema.
Ja Rek
2

Es posible que algo haya cambiado la configuración de tu proxy, como Fiddler. Cierre Fiddler, luego cierre Visual Studio y ábralo nuevamente.

Sylvain Rodrigue
fuente
1
¡Gracias! Apagar Fiddler Everywhere me resolvió cuando la compilación de Docker no restauraba nugets debido a un problema de TLS en una Mac. Salvó mi día.
Pensamientos Suaves
2

Si ve el error siguiente, es posible que deba configurar su Credencial de artefactos de Azure, consulte este vínculo de Github , puede instalar el proveedor de credenciales ejecutando un script de PowerShell o manualmente.

error :   Response status code does not indicate success: 401 (Unauthorized).
Jonathan Chow
fuente
1
Esto es lo que (finalmente) me ayudó.
Dave Clausen
1

El error puede deberse solo a un problema temporal de la red y desaparecer si vuelve a intentarlo.

Michael Freidgeim
fuente
1

Estoy usando VSO / Azure DevOps.

También puede visitar la URL del feed directamente en su navegador. Puede terminar con una respuesta que contenga un mensaje como este, que puede hacer que su diagnóstico sea mucho más rápido:

The user does not have a license for the extension ms.feed.

ps2goat
fuente
Sí, lo he notado hoy también. Funciona bien en proyectos centrales normales que no son de dotnet en VS, pero mata un proyecto central de ejemplo en un contenedor docker (a pesar de que no quiere ni necesita nada de nuestro repositorio NuGet alojado en Azure DevOps) totalmente muerto. No estoy seguro de cómo diablos arreglar esto sin esa licencia de alimentación, lo cual no va a suceder. Seguramente esto tiene que ser un error, ya que ¿cuál es el punto en un repositorio de NuGet que no puede usar con el núcleo?
Steve Pettifer
Si no está usando nada del repositorio, vea si puede eliminar esa fuente del archivo NuGet.Config. Tenemos un agente de compilación con acceso a las fuentes, por lo que nos funciona.
ps2goat
Si tan sólo pudiera. Lamentablemente, necesito cosas de ese repositorio (me equivoqué en mi comentario original, de lo contrario comentaría o eliminaría esa fuente en la configuración de NuGet, pero eso afectaría a otros proyectos que lo usan). Parece que una vez que (finalmente) me asignen mi sub de MSDN, mi nivel de privilegio de usuario en Azure DevOps aumentará / aumentará y obtendré acceso a la package sourcesextensión que hará que esto funcione. Parece un poco tonto, pero ahí está.
Steve Pettifer
1

En mi caso, simplemente reinicié la ventana acoplable y simplemente funcioné.

Shwe
fuente
1

Tuve un problema similar al intentar conectarme a mi servidor TFS privado en lugar del servidor API público de NuGet. Por alguna razón, tuve un problema entre el servidor de AD y el servidor de TFS para que siempre devolviera un 401. El artículo de configuración de NuGet muestra que puede agregar su nombre de usuario y contraseña de AD al archivo de configuración de la siguiente manera:

  <packageSourceCredentials>
      <vstsfeed>
          <add key="Username" value="[email protected]" />
          <add key="Password" value="this is an encrypted password" >
          <!-- add key="ClearTextPassword" value="not recommended password" -->
      </vstsfeed>
  </packageSourceCredentials>

Esta no es una solución ideal, más una temporal hasta que pueda averiguar cuál es el problema con el servidor de AD, pero esto debería ser suficiente.

Helado
fuente
1

Estaba usando una versión anterior de Nuget en VS2010, donde el valor predeterminado es TLS 1.0 aquí se puede solucionar cambiando la versión TLS predeterminada utilizada por .Net framework que está configurado en las claves del Registro

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

NuGet.org eliminará permanentemente el soporte para TLS 1.0 y 1.1 el 15 de junio. Asegúrese de que sus sistemas utilicen TLS 1.2.

Puede consultar este enlace para obtener información sobre la compatibilidad con TLS 1.2

Sahil Guleria
fuente
1

Tuve el mismo mensaje de error al aplicar scaffolding Identity a mi proyecto ASP.NET Core MVC. Dado que mi conexión no estaba detrás de un proxy, eliminar / editar configuraciones de proxy no tenía sentido. Y tampoco quería eliminar un archivo ni desinstalar PMC. Mientras miraba a mi alrededor, me di cuenta de un botón "Borrar todos los cachés de Nuget" en Herramientas -> Opciones -> Administrador de paquetes NuGet -> General. Después de presionar el botón tuve que esperar un tiempo para que se completara la operación. Después de eso, traté de volver a montar la identidad, pero no funcionó. Entonces decidí reiniciar VS y listo :)

ingrese la descripción de la imagen aquí

heurístico
fuente
0

Es posible que algunos entornos de desarrollo no utilicen ni un navegador ni un proxy.

Una solución sería descargar el paquete desde un nugget como el https://dotnet.myget.org/F/dotnet-core/api/v3/index.jsona un directorio compartido y luego ejecutar lo siguiente:

dotnet add package Microsoft.AspNetCore.StaticFiles -s "shared drive:\index.json"

Espero que eso funcione para usted.  

Charles Moisés
fuente
0

En apoyo de la respuesta proporcionada por @Eddie Chen ( aquí ), también tuve que agregar la configuración http_proxy al siguiente archivo:

C: \ Windows \ system32 \ config \ systemprofile \ AppData \ Roaming \ NuGet \ NuGet.Config

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

Vaya a -> Herramientas -> Extensiones y actualizaciones y desinstale el administrador de paquetes NuGet ... reinicie Visual Studio y vuelva a instalarlo ...

Kadeer Mughal
fuente
0

En mi caso, Fiddler se estaba ejecutando y había cambiado la configuración de mi proxy

Dooie
fuente
0

Recibí este mismo error mientras ejecutaba RUN dotnet restoreel comando Dockerfileusing docker-compose upen Windows 10.

ingrese la descripción de la imagen aquí

Probé todas las soluciones posibles proporcionadas en Internet y también estuve atento a este problema abierto . Finalmente, después de pasar más de 8 horas, siguiendo los pasos anteriores, pude solucionar mi problema.

  1. Desinstalar Dockerde su sistema
  2. Reinicia tu sistema
  3. Instalar Dockerdesde este enlace . A continuación se muestra la versión de mi Docker

    ingrese la descripción de la imagen aquí

  4. Reinicia tu sistema

  5. Inicie Docker para Windows, busque Dockeren la barra de búsqueda de Windows. Asegúrate de que esté funcionando.

  6. También debe ir a Services.mscy asegurarse de que los servicios Docker Enginey se Docker for Windows Serviceestén ejecutando.

    ingrese la descripción de la imagen aquí

  7. Por último, debe verificar su archivo Nuget.config desde C:\Users\{Username}\AppData\Roaming\NuGet. Para mí, el contenido de ese archivo era el siguiente.

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

    Espero que esto ayude.

Sibeesh Venu
fuente
0

en mi caso tuve que agregar las fuentes en las Opciones de Visual Studio-> NugetPAckageManager-> fuentes y luego reiniciar el símbolo del sistema de Visual Studio

limón
fuente
0

Tuve este error y luego me di cuenta de que había iniciado sesión con mi cuenta personal de Microsoft en lugar de mi cuenta de trabajo.

Espero que esto ayude.

Mark Infantino
fuente
Gracias, a veces es demasiado fácil :)
albin
0

Tal vez esto ayude

Para mí, eliminar la carpeta .nuget ubicada en C: \ Users \ YourNameHere solucionó el problema.

IvanovAndrew
fuente
0

Si usa Visual Studio 2019, simplemente elimine la sección "defaultproxy" si no está usando ningún proxy predeterminado en devenv.exe.config. en VS 2017 esta sección no estuvo presente

cambio

<defaultProxy enabled="true" useDefaultCredentials="true">
    <proxy bypassonlocal="True" proxyaddress="http://<yourproxy:port#>"/>
</defaultProxy>

a

<!--<defaultProxy enabled="true" useDefaultCredentials="true">
    <proxy bypassonlocal="True" proxyaddress="http://<yourproxy:port#>"/>
</defaultProxy>-->

De lo contrario, proporcione el nombre de usuario y la contraseña del proxy adecuados.

Aditya Mishra
fuente
0

Estaba intentando agregar una fuente de Azure Artifacts NuGet.

Seguí las instrucciones de Microsoft aquí , con una supervisión crítica.

Olvidé reemplazarlo /v3/index.jsoncon /v2.

ingrese la descripción de la imagen aquí

Jim G.
fuente
0

Parece que Nuget todavía usa la dirección del script de proxy (para nuestra VPN) a pesar de que la configuración del proxy está desactivada. Eliminé la dirección del script y funciona.

ingrese la descripción de la imagen aquí

dijoe
fuente
0

Si está detrás de un proxy de la empresa y en Mac, solo asegúrese de que sus casillas de verificación http / https estén marcadas y aplicadas.

J Clark
fuente
0

Configuración de su PC -> Proxy de red e Internet -> Configuración automática de proxy, luego configure Detectar automáticamente la configuración en apagado y borre la Dirección de secuencia de comandos

Arun Kumar Yadu
fuente