Rhaid i’r cais ddefnyddio’r HttpClient a adeiladwyd â’ch triniwr dirprwy. Nid yw creu gwrthrych WebProxy digyswllt yn newid llwybr cleient arall.

using System;
using System.Net;
using System.Net.Http;

var proxy = new WebProxy("http://203.0.113.10:8080")
{
    BypassProxyOnLocal = false
};

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);
Console.WriteLine(await response.Content.ReadAsStringAsync());

Disodlwch y cyfeiriad dogfennu â dirprwy HTTP go iawn o’ch gwasanaeth neu’r rhestr dirprwyon HTTP. Mae’r gystrawen lefel uchaf hon yn addas i brosiect consol C# modern; gall prosiectau hŷn roi’r datganiadau mewn Main anghydamserol.

Gwiriwch y ddwy briodwedd ar y triniwr: mae Proxy yn dewis y pwynt terfyn ac mae UseProxy=true yn galluogi ei ddefnyddio. Os yw’r pwynt yn gweithio ar wahân ond nid yn y rhaglen, cadarnhewch nad oes cod yn analluogi UseProxy a bod yr alwad yn defnyddio’r enghraifft hon. Mae’r triniwr penodol yn osgoi dibynnu ar ganfod dirprwy gan y broses neu’r system weithredu.

Pan fo gweithredwr y dirprwy’n darparu cyfrif, neilltuwch NetworkCredential i’r briodwedd WebProxy.Credentials. Mae Authorization y wefan ar gyfer cam gwahanol, ac nid yw cofnod IP:port cyhoeddus yn darparu manylion mewngofnodi diofyn. Gall gwrandäwr http:// gludo HTTPS drwy dwnnel; cadwch y gwiriad cyrchfan arferol.

Mae’r rhaglen fer hon yn rhyddhau gwrthrychau wrth ymadael. Ar gyfer galwadau gwasanaeth ailadroddus, dilynwch ganllawiau .NET ar oes cleient a chadwch y cleient/triniwr ar gyfer y llwyth gwaith yn lle ailadeiladu pyllau cysylltiadau bob cais. Archwiliwch y statws a ddychwelwyd: gall llwybr dirprwy gweithredol barhau i gludo gwrthodiad gan y wefan.

Erthyglau cysylltiedig