Condividi tramite


Errore NuGet NU1302

Si esegue l'operazione 'restore' con un'origine 'HTTP': myHttpSource. NuGet richiede origini HTTPS. Per usare un'origine HTTP, è necessario impostare in modo esplicito "allowInsecureConnections" su true nel file NuGet.Config. Per altre informazioni, vedere https://aka.ms/nuget-https-everywhere.

Questione

myHttpSource è un'origine HTTP non sicura. È consigliabile usare invece un'origine HTTPS.

Soluzione

Opzione 1: Aggiornare l'origine per l'uso di HTTPS

Se possibile, aggiornare l'origine del pacchetto per usare https:// anziché http://:

<configuration>
  <packageSources>
    <add key="SecureSource" value="https://example.com/nuget/" />
  </packageSources>
</configuration>

Opzione 2: Consenti connessioni non sicure (se necessario)

Se l'origine deve rimanere HTTP, consentire in modo esplicito le connessioni non sicure aggiungendo il flag AllowInsecureConnections nel NuGet.Config:

<configuration>
  <packageSources>
    <add key="InsecureSource" value="http://example.com/nuget/" allowInsecureConnections="true" />
  </packageSources>
</configuration>

Opzione 3: Consultare il livello di analisi dell'SDK

La proprietà SdkAnalysisLevel nel progetto può fungere da soluzione alternativa temporanea per la gestione delle origini HTTP. Se è necessario tempo aggiuntivo per risolvere l'errore HTTP, è possibile ridurre il SdkAnalysisLevel per eliminare temporaneamente gli errori. Ecco come funziona:

  • Per il valore del livello di analisi dell'SDK inferiore alla 9.0.100, l'uso di origini HTTP attiva un avviso (NU1803).
  • A partire da SDK Analysis Level 9.0.100 o versione successiva, le origini HTTP generano un errore (NU1302) a meno che AllowInsecureConnections non sia abilitato in modo esplicito.