0

在不同的设备上使用 HttpURLConnection getInputStream() 时,我遇到了一个奇怪的行为。在除“阿尔卡特”之外的所有设备上,我只为阿尔卡特设备获得有效的输入流,我得到不同(空)类型的输入流:

除阿尔卡特以外的所有设备 在此处输入图像描述

阿尔卡特设备 在此处输入图像描述

我拨打完全相同的电话并为所有设备获得 200。

代码非常简单:

urlObj = new URL(url);
urlConnection = (HttpURLConnection)urlObj.openConnection();
urlConnection.setRequestMethod(method);
urlConnection.setDoInput(true);
urlConnection.setConnectTimeout(timeout);
urlConnection.setReadTimeout(timeout);
urlConnection.setDoOutput(true);
urlConnection.setFixedLengthStreamingMode(body.length);
urlConnection.setRequestProperty(HEADER_KEY_CONTENT_LENGTH, String.valueOf(body.length));
urlConnection.getOutputStream().write(body);

int responseCode = urlConnection.getResponseCode();
InputStream in = urlConnection.getInputStream();

有什么建议么?

4

1 回答 1

0

请检查您是否需要阿尔卡特的代理设置。如果没有适当的代理网关,httpurlconnection 可能会失败。

于 2015-04-15T10:45:58.567 回答