ඉල්ලීම ඔබේ proxy handler සමඟ සෑදූ HttpClient භාවිත කළ යුතුය. අදාළ නොවන WebProxy object සෑදීමෙන් වෙනත් client මාර්ගය වෙනස් නොවේ.

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());

ලේඛන ලිපිනය ඔබේ සේවයේ හෝ HTTP proxy ලැයිස්තුවේ සැබෑ HTTP proxy එකකින් මාරු කරන්න. මේ top-level syntax නවීන C# console ව්‍යාපෘතියකට ගැළපේ; පැරණි ව්‍යාපෘතිවල statements asynchronous Main තුළ තැබිය හැකිය.

Handler properties දෙකම බලන්න: Proxy endpoint තෝරයි, UseProxy=true භාවිතය සක්‍රිය කරයි. Endpoint වෙනම ක්‍රියාකරත් යෙදුමේ නොකරන්නේ නම් කේතයක් UseProxy අක්‍රිය නොකරන බවත් call මේ instance භාවිත කරන බවත් තහවුරු කරන්න. වෙන්වූ handler process හෝ OS හි proxy සොයාගැනීම මත රඳාපවතින්නට අවශ්‍ය නොකරයි.

Proxy ක්‍රියාකරු ගිණුමක් දෙන්නේ නම් NetworkCredential යන්න WebProxy.Credentials property වෙත පවරන්න. වෙබ් අඩවියේ Authorization වෙනත් අදියරකට අදාළය; පොදු IP:port සටහන පෙරනිමි login තොරතුරු නොදෙයි. http:// listener උමගකින් HTTPS රැගෙන යා හැකිය; සාමාන්‍ය ගමනාන්ත තහවුරුව තබාගන්න.

මේ කුඩා වැඩසටහන ඉවත්වීමේදී object නිදහස් කරයි. නැවත නැවත service call කරන විට .NET client lifetime මඟපෙන්වීම අනුව යමින් හැම ඉල්ලීමකටම connection pool යළි නොසාදා workload සඳහා client/handler තබාගන්න. ආපසු ලැබුණු status බලන්න: ක්‍රියාකරන proxy මාර්ගයකින් පවා වෙබ් අඩවියේ ප්‍රතික්ෂේපයක් රැගෙන ආ හැකිය.

අදාළ ලිපි