Pretvorite ime gostitelja proxyja v IDNA ASCII v PowerShellu
Pretvorite internacionalizirano ime domene v njegovo obliko IDNA ASCII, ko uporabnik končne točke proxyja ne more razrešiti imena gostitelja Unicode.
Ime gostitelja proxyja lahko v prikazani obliki vsebuje mednarodne znake. Odjemalec ali razreševalnik, ki pričakuje obliko IDNA ASCII, potrebuje to ime gostitelja pretvorjeno, ne poljubne odstotno kodirane kopije celotnega URL-ja.
V PowerShellu .NET pretvorbo izpostavi neposredno:
$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 je samo ime domene. Vrata in shema ostaneta ločena. Uporabite dobljeni proxy v odjemalcu HTTP, ki pošilja zahtevo.
Za že razčlenjen Uri IdnHost izpostavi njegovo predstavitev imena gostitelja, združljivo z IDNA. Preglejte izvirno končno točko, namesto da bi večkrat kodirali že kodirano oznako.
V napaki razreševanja ločite ime gostitelja proxyja od imena gostitelja cilja. Pretvorba enega ne popravi tipkarske napake ali manjkajočega zapisa DNS pri drugem. Ohranite predvideno ime gostitelja tudi za identiteto potrdila; zamenjava s poljubnim naslovom IP spremeni drug del povezave.