如何在UIWebView中打开西里尔文字域?

我尝试在UIWebView中打开cyrillic url,但它可以打开。 我使用以下代码%

urlString = [NSString stringWithFormat:@"http://%@", urlString]; urlString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; url = [NSURL URLWithString:urlString]; NSURLRequest *request = [NSURLRequest requestWithURL:url]; [_webView loadRequest:request]; 

如果我尝试打开https://www.google.ru/webhp?q =президент#newwindow = 1&q =президент一切正常,但是当我尝试打开президент.рф时它不起作用。 我需要为开放的西里尔字母域做些什么?

要连接到IDN(国际域名)URL,您需要在Punycode中对它们进行编码。 例如,此URL将编码为http://xn--d1abbgf6aiiy.xn--p1ai 。

不幸的是我不知道iOS中有任何内置的punycode支持。 但是有第三方工具,如NSURL-IDN (从OmniNetworking库中提取)。