Proxyindstillinger i ASP.NET Core: launchSettings.json kontra produktion
Skeln mellem proxyværdier fra udviklingsstartprofilen og det miljø og den HTTP-handler, som en udrullet ASP.NET Core-proces bruger.
En proxyværdi i launchSettings.json tilhører en udviklingsstartprofil. Når applikationen publiceres, bliver den profil ikke miljøet for en IIS-arbejdsproces, en tjeneste eller en container.
Ved fejl i en udrullet installation skal du undersøge den proces, der faktisk starter applikationen. Dets miljø, konto og HTTP-handler afgør, hvilke proxyinput der er tilgængelige.
| Hvor det virker | Hvad du skal sammenligne efter udrulning |
|---|---|
| Startprofil i IDE | Værtsprocessens miljø |
| Interaktiv brugersession | Tjenestekontoen og dens proxyindstillinger |
| En manuelt oprettet HTTP-klient | Den handler, som applikationens injicerede klient bruger |
Standardproxyinitialisering i moderne HttpClient har platformspecifikke regler for miljø og systemkonfiguration. En eksplicit konfigureret handler kan tilsidesætte disse standarder. Med IHttpClientFactory skal du kontrollere registreringen af den navngivne klients primære handler og det navn, der hentes på kaldstedet. Kontroller begge input, før du konkluderer, at en konfigurationsfil blev ignoreret.
Ældre .NET Framework-eksempler med system.net/defaultProxy beskriver en anden konfigurationsmodel. Indsæt ikke det afsnit i en moderne udrulningsfil, og antag ikke, at enhver .NET HTTP-implementering bruger det. I en IIS-udrulning har ASP.NET Core-modulet også en understøttet mekanisme til konfiguration af procesmiljøet; bevar resten af hostingkonfigurationen, når du tilføjer værdier.
Notér, om den forventede variabel findes, uden at offentliggøre dens fulde værdi med legitimationsoplysninger. Bekræft derefter, at den klient, der udfører den mislykkede anmodning, bruger den kilde. En korrekt konfigureret starter kan ikke reparere en klient, der bevidst bruger en anden rute.