Dè na teisteanasan inntrigidh .NET a bhuineas dhan phrogsaidh?
Sgar WebProxy.Credentials, teisteanasan an fhrithealaiche ceann-uidhe agus DefaultProxyCredentials nuair a thèid progsaidh HTTP a dhearbhadh.
Airson WebProxy sònraichte, cuir cunntas a’ phrogsaidh air an nì sin. Tha feartan teisteanasan inntrigidh .NET eile a’ frithealadh diofar luchd-faighinn:
| Feart | Neach-faighinn |
|---|---|
WebProxy.Credentials | Am progsaidh a tha an nì sin a’ riochdachadh. |
HttpClientHandler.Credentials | Am frithealaiche ceann-uidhe. |
DefaultProxyCredentials | Progsaidh bunaiteach an t-siostaim nuair a tha Proxy null agus UseProxy true. |
Tha an eisimpleir .NET 10 seo a’ toirt progsaidh ainmichte gu soilleir agus a chunntas fhèin:
using System;
using System.Net;
using System.Net.Http;
string password = Environment.GetEnvironmentVariable("PROXY_PASSWORD")
?? throw new InvalidOperationException("Set PROXY_PASSWORD");
var proxy = new WebProxy("http://203.0.113.10:8080")
{
Credentials = new NetworkCredential("proxy-user", password)
};
using var handler = new HttpClientHandler
{
Proxy = proxy,
UseProxy = true
};
using var client = new HttpClient(handler)
{
Timeout = TimeSpan.FromSeconds(15)
};
using var response = await client.GetAsync("https://example.com/");
Console.WriteLine((int)response.StatusCode);
Atharraich puing-deiridh nan sgrìobhainnean agus cleachd cunntas a thug an gnìomhaiche seachad. Chan fheum clàr gun dearbhadh logadh a-steach air a chruthachadh leat fhèin. Leis gu bheil Proxy an làimhsiche air a shònrachadh gu soilleir, chan eil DefaultProxyCredentials an àite WebProxy.Credentials.
Tha raon sònraichte dhan nì aig UseDefaultCredentials cuideachd: tha dearbhadh frithealaiche an làimhsiche agus dearbhadh progsaidh WebProxy eadar-dhealaichte. Chan e freagairt choitcheann do 407 a th’ ann cunntas cleachdaiche a’ phròiseis a chur.
Ma mhaireas an dùbhlan dearbhaidh, sgrùd an sgeama fìor, a’ phuing-deiridh a chaidh a thaghadh agus an eisimpleir cliaint/làimhsiche. Faodaidh dearbhadh progsaidh tighinn ro TLS a’ chinn-uidhe, agus mar sin chan urrainn do cheann-sgrìobhadh Authorization na làraich a fhreagairt. Tha taic dearbhaidh fhathast an urra ri làimhsiche, àrd-ùrlar, seirbheis agus poileasaidh cur an gnìomh; chan eil atharrachadh cruinneil progsaidh Windows a dhìth.