En Proxy-Hostnumm an IDNA ASCII ëmwandelen am PowerShell
Wandelt en internationaliséierten Domainnumm a seng IDNA ASCII-Form ëm, wann den Notzer vun engem Proxy-Endpunkt den Unicode-Hostnumm net kann opléisen.
En Proxy-Hostnumm kann an senger ugewise Form international Zeechen enthalen. En Client oder Resolver, deen d'IDNA ASCII-Form erwaart, brauch deen Hostnumm ëmgewandelt, net eng willkürlech prozent-escaped Kopie vun der ganzer URL.
Am PowerShell weist .NET d'Ëmwandlung direkt:
$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 ass just den Domainnumm. De Port an de Schema bleiwen getrennt. Benotzt de resultéierende Proxy um HTTP-Client, deen d'Ufro mécht.
Fir en Uri, deen schonn analyséiert gouf, weist IdnHost seng IDNA-kompatibel Hostnumm-Duerstellung. Iwwerpréift den ursprénglechen Endpunkt, amplaz e schonn encodéierte Label ëmmer erëm ze encodéieren.
Ënnerscheet am Opléisungsfehler den Hostnumm vum Proxy vum Hostnumm vum Zil. Dee een ëmzewandelen korrigéiert keen Tippfehler oder fehlenden DNS-Record beim aneren. Behällt och den ugedaachten Hostnumm fir d'Zertifikatsidentitéit; en duerch eng willkürlech IP-Adress z'ersetzen ännert en aneren Deel vun der Verbindung.