ಸ್ವಂತ WebProxyಗಾಗಿ ಪ್ರಾಕ್ಸಿ ಖಾತೆಯನ್ನು ಅದೇ ಆಬ್ಜೆಕ್ಟ್‌ನಲ್ಲಿ ಇಡಿ. ಇತರ .NET ಪ್ರವೇಶ ಮಾಹಿತಿ ಗುಣಗಳ ಸ್ವೀಕರಿಸುವವರು ಬೇರೆ:

ಗುಣಸ್ವೀಕರಿಸುವವರು
WebProxy.Credentialsಆ ಆಬ್ಜೆಕ್ಟ್ ಸೂಚಿಸುವ ಪ್ರಾಕ್ಸಿ.
HttpClientHandler.Credentialsಗಮ್ಯ ಸರ್ವರ್.
DefaultProxyCredentialsಸಿಸ್ಟಮ್ ಮೂಲ ಪ್ರಾಕ್ಸಿ, Proxy null ಮತ್ತು UseProxy true ಆಗಿರುವಾಗ.

ಈ .NET 10 ಉದಾಹರಣೆ ಸ್ಪಷ್ಟವಾಗಿ ಕೊಟ್ಟ ಪ್ರಾಕ್ಸಿ ಮತ್ತು ಅದರ ಸ್ವಂತ ಖಾತೆ ನೀಡುತ್ತದೆ:

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

ದಾಖಲೆಯ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಬದಲಿಸಿ ನಿರ್ವಾಹಕ ಕೊಟ್ಟ ಖಾತೆ ಬಳಸಿ. ದೃಢೀಕರಣವಿಲ್ಲದ ಪಟ್ಟಿ ದಾಖಲೆಗೆ ಕಲ್ಪಿತ ಲಾಗಿನ್ ಬೇಕಿಲ್ಲ. ಹ್ಯಾಂಡ್ಲರ್‌ನ Proxy ಸ್ಪಷ್ಟವಾಗಿ ಕೊಟ್ಟಿರುವುದರಿಂದ DefaultProxyCredentials, WebProxy.Credentialsಗೆ ಬದಲಿಯಲ್ಲ.

UseDefaultCredentials ವ್ಯಾಪ್ತಿಯೂ ಆಬ್ಜೆಕ್ಟ್‌ಗೆ ನಿರ್ದಿಷ್ಟ: ಹ್ಯಾಂಡ್ಲರ್ ಸರ್ವರ್ ದೃಢೀಕರಣ ಮತ್ತು WebProxy ಪ್ರಾಕ್ಸಿ ದೃಢೀಕರಣ ಬೇರೆ. ಪ್ರಕ್ರಿಯೆ ಬಳಕೆದಾರನ ಖಾತೆ ಕಳುಹಿಸುವುದು 407ಗೆ ಸಾಮಾನ್ಯ ಉತ್ತರ ಅಲ್ಲ.

ದೃಢೀಕರಣ ಸವಾಲು ಮುಂದುವರಿದರೆ ನಿಜವಾದ ವಿಧಾನ, ಆರಿಸಿದ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಮತ್ತು ಕ್ಲೈಂಟ್/ಹ್ಯಾಂಡ್ಲರ್ ಇನ್‌ಸ್ಟನ್ಸ್ ಪರಿಶೀಲಿಸಿ. ಪ್ರಾಕ್ಸಿ ದೃಢೀಕರಣ ಗಮ್ಯ TLSಗಿಂತ ಮೊದಲು ಆಗಬಹುದು, ಆದ್ದರಿಂದ ವೆಬ್‌ಸೈಟ್ Authorization ಹೆಡರ್ ಅದಕ್ಕೆ ಉತ್ತರಿಸುವುದಿಲ್ಲ. ಬೆಂಬಲ ಇನ್ನೂ ಹ್ಯಾಂಡ್ಲರ್, ವೇದಿಕೆ, ಸೇವೆ ಮತ್ತು ಜಾರಿ ನೀತಿಯ ಮೇಲೆ ಅವಲಂಬಿತ; ಒಟ್ಟಾರೆ Windows ಪ್ರಾಕ್ಸಿ ಬದಲಾವಣೆ ಬೇಕಿಲ್ಲ.

ಸಂಬಂಧಿತ ಲೇಖನಗಳು