我希望有人能够帮助我解决使用HttpsURLConnection代码时遇到的间歇性连接问题。以下是我使用的代码:
每次我使用连接来拉取JSON文件时,连接都能正常工作。但是,当我再次使用连接发送命令时,第一次总是失败的。如果我在短时间内(5秒内)发送命令,则通常可以正常工作,但是如果等待一段时间后再发送,则会失败。我认为这不是SSL问题,因为它第一次连接就正确地连接了,但我可能在这里错了。我还尝试了许多不同的变化,例如添加:
然而,我没有运气。非常感谢您的任何帮助。
HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
conn.setReadTimeout(10 * 1000);
if conn.getResponseCode() != 200) {
Log.v(TAG, "error code:" + conn.getResponseCode());
}
每次我使用连接来拉取JSON文件时,连接都能正常工作。但是,当我再次使用连接发送命令时,第一次总是失败的。如果我在短时间内(5秒内)发送命令,则通常可以正常工作,但是如果等待一段时间后再发送,则会失败。我认为这不是SSL问题,因为它第一次连接就正确地连接了,但我可能在这里错了。我还尝试了许多不同的变化,例如添加:
conn.setUseCaches(false);
conn.setRequestProperty("Connection","Keep-Alive");
conn.getHostnameVerifier();
conn.getSSLSocketFactory();
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setRequestMethod("POST");
conn.wait(100);
然而,我没有运气。非常感谢您的任何帮助。
LogCat
并在代码块内放置调试语句,以便它可以向您报告失败的确切位置。 - Anthony Forloney