使用httpclient for org.apache.httpcomponents version 4.3.6,我试图通过new HttpGet(url)对http://ньюбаланс.рф这样的域名执行GET请求,但最终会出现以下错误:
Caused by: java.net.UnknownHostException: ?????????.??
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:907)
at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1302)
at java.net.InetAddress.getAllByName0(InetAddress.java:1255)
...url变量有正确的UTF-8值-它肯定不是从'?‘人物。
如何向此类域名发送请求?
发布于 2015-08-17 20:46:23
在解析域之前,您需要将域名编码为小代码。
final encodedDomain = IDN.toASCII(unicodeDomain);还请查看这里的Android文档:http://developer.android.com/reference/java/net/IDN.html
发布于 2015-08-17 20:42:54
我找到了解决办法
"http://"+IDN.toASCII(domain);https://stackoverflow.com/questions/32059317
复制相似问题