HttpURLConnection.getOutputStream()需要20秒。为什么?

时间:2011-10-12 18:04:37

标签: java android web-services

我正在尝试使用以下代码片段在android(2.3.4)中执行webservice调用。我的问题发生在conn.getOutputStream上,因为这个方法似乎需要整整20秒才能返回。有什么想法吗?

URL uri = new URL(serviceURI + "/remoteMethod");
HttpURLConnection conn = (HttpURLConnection) uri.openConnection();
conn.setDoOutput(true);
conn.setRequestProperty("Content-Type","application/x-www-form-urlencoded");

Log.d(TAG, "opening output stream");
OutputStreamWriter writer = new OutputStreamWriter(
    conn.getOutputStream());
Log.d(TAG, "output stream opened");

String body = getRequestBody();
writer.write(body);
writer.flush();
writer.close();
int responseCode= conn.getResponseCode();

1 个答案:

答案 0 :(得分:0)

看起来这可能是一个网络问题,并且jarnbjo在评论中的建议实际上是正确的,因为连接只花了太长时间。我将服务器和设备移动到另一个网络(webservice不公开),问题就解决了。