URI може да съдържа username:password преди хоста си. Това не означава, че всеки .NET API, приемащ този URI, копира потребителската информация в обект за удостоверяване.

Когато създавате WebProxy директно, направете присвояването на идентификационни данни явно:

var proxy = new WebProxy("http://203.0.113.10:8080")
{
    Credentials = new NetworkCredential(proxyUser, proxyPassword)
};

Променливите за endpoint и акаунт са илюстративни. Така адресът на местоназначението, адресът на проксито и акаунтът на проксито остават отделни.

Ако входен формат предоставя URL с идентификационни данни, анализирайте потребителската му информация съзнателно. Запазете парола с двоеточия, като разделяте само при разделителя на данните, и декодирайте кодираните компоненти на подходящия етап. Избягвайте да отпечатвате оригиналния URL, докато диагностицирате този парсер.

URL на прокси, работещ като настройка на средата, може да се държи различно, когато се подаде на друг конструктор. Инициализацията на прокси от средата има собствена логика за анализ; тя не е обещание, че всеки конструктор използва същите полета.

Накрая, задайте конфигурирания прокси обект на манипулатора, който изпълнява заявката. Правилните идентификационни данни на неизползван WebProxy не могат да повлияят на връзката.

Подобни статии