Завантажувач AngleSharp передає завантаження зареєстрованим запитувачам. З AngleSharp.Io явно приєднайте HttpClientRequester, що підтримує проксі:

using AngleSharp;
using AngleSharp.Io.Network;

var handler = new System.Net.Http.HttpClientHandler
{
    UseProxy = true,
    Proxy = new System.Net.WebProxy(
        "http://proxy.example.net:8080")
};
var http = new System.Net.Http.HttpClient(handler);
http.DefaultRequestHeaders.UserAgent.ParseAdd("ExampleReader/1.0");

var configuration = Configuration.Default
    .With(new HttpClientRequester(http))
    .WithDefaultLoader();

var context = BrowsingContext.New(configuration);

Використовуйте цей контекст для передбаченої навігації OpenAsync. Кінцева точка зі списку HTTP-проксі може надати адресу WebProxy для публічних веб-завантажень. Підтримуйте базовий HTTP-клієнт живим для цієї роботи й потім звільніть власні ресурси.

WithRequesters — альтернатива, що реєструє запитувачі, доступні з AngleSharp.Io. Не поєднуйте її з кількома вручну налаштованими HTTP-запитувачами, якщо тільки їхній вибір не є навмисним. Проксі, налаштований на одному запитувачі, не налаштовує іншу реалізацію, вибрану для запиту.

Користувацькі типові заголовки на http належать запиту до адресата. Значення заголовків, що описують тіло запиту, зокрема Content-Type, мають відповідати цьому запиту, а не нав'язуватися глобально кожному завантаженню.

Зареєструйте запитувач до WithDefaultLoader, щоб завантажувач міг використовувати передбачену службу HTTP замість додавання своєї типової, коли жодної немає.

Схожі статті