一整天都工作得很好,现在突然无法连接了。我可以通过浏览器进行连接(您也可以: http://secure.exoterragame.com/noxastra/login.php ),但它在我的 Java 应用程序中不起作用。我收到 UnknownHostException。
URL register = new URL("http://secure.exoterragame.com/noxastra/login.php" +
"?username=" + request.Username +
"&password=" + request.Password);
URLConnection conn = register.openConnection();
我完全被难住了。有谁知道为什么会发生这种情况?
(是的,我们将在最终版本中使用 https :P)
最佳答案
做一个packet sniff看看幕后发生了什么。 (我建议所有平台 Wireshark。)
我曾经在 Flash 中遇到过类似的问题,当时我很抓狂,直到我意识到这是虚拟机中的一个错误,它让我超时而没有发送任何数据包!
我不认为 Java 会有这样的 bug,但重点是,嗅探有时是无价的。
也许您的浏览器已获得 DNS/主机文件更新,但程序没有(或相反?)也许程序卡在(本地)防火墙上?也许它确实登录成功,但在重定向响应时中断? (我什至不知道 URL
是否能够做到这一点,但仍然......)也许您已经在某处启用/禁用了 IPv6?
关于java - Java突然无法连接外部服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6406364/