Një emër hosti proxy mund të përmbajë karaktere ndërkombëtare në formën e tij të shfaqur. Një klient ose zgjidhës që pret formën IDNA ASCII ka nevojë për atë emër hosti të konvertuar, jo për një kopje arbitrare të escape-uar me përqindje të të gjithë URL-së.

Në PowerShell, .NET e ekspozon konvertimin drejtpërdrejt:

$mapping = New-Object System.Globalization.IdnMapping
$asciiHost = $mapping.GetAscii($unicodeProxyHost)
$endpoint = New-Object System.UriBuilder
$endpoint.Scheme = 'http'
$endpoint.Host = $asciiHost
$endpoint.Port = 8080

$proxy = New-Object System.Net.WebProxy($endpoint.Uri)

unicodeProxyHost është vetëm emri i domenit. Porta dhe skema mbeten të ndara. Përdorni proxy-n që rezulton në klientin HTTP që bën kërkesën.

Për një Uri të analizuar tashmë, IdnHost ekspozon paraqitjen e emrit të hostit të përputhshëm me IDNA. Rishikoni pikën fundore origjinale në vend që të kodoni vazhdimisht një etiketë tashmë të koduar.

Në një gabim zgjidhjeje, dalloni emrin e hostit të proxy-t nga ai i destinacionit. Konvertimi i njërit nuk korrigjon një gabim shtypi ose një regjistrim DNS që mungon te tjetri. Ruani edhe emrin e hostit të synuar për identitetin e certifikatës; zëvendësimi i tij me një adresë IP arbitrare ndryshon një pjesë tjetër të lidhjes.

Artikuj të ngjashëm