如何在httpURLConnection调用中修改源端口

时间:2015-01-27 06:47:21

标签: android sockets httpurlconnection

我有一个客户端Android应用程序,可以创建到服务器的http和https连接(在端口80上),我可以成功读取和写入数据。

当我的客户端应用程序的多个实例尝试从同一网络(相同的源IP地址)连接到服务器时出现问题。在这种情况下,只有1个客户端始终连接(当多个客户端尝试同时连接到服务器时)。

有没有办法在httpURLConnect调用中指定源端口号,以便服务器为每个客户端打开一个单独的套接字。

HttpsURLConnection conns = null;
url=new URL(urlS);
conns=(HttpsURLConnection)url.openConnection();                 
conns.setDoOutput(true);
conns.setRequestMethod("POST");
conns.setFixedLengthStreamingMode(params.getBytes().length);
conns.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
conns.setRequestProperty("Connection", "close");
conns.setConnectTimeout(SOCKET_TIMEOUT);
conns.setReadTimeout(HTTP_TIMEOUT);

//send the POST out
PrintWriter out = new PrintWriter(conns.getOutputStream());
out.print(params);
out.close();

1 个答案:

答案 0 :(得分:0)

我想在这里发布解决方案,因为它可以帮助某人。 我从上面的代码中删除了这一行,它现在像魅力一样工作 我可以在同一网络上同时运行3个客户端与同一服务器通信。 我刚删除了这个:

conns.setRequestProperty("Connection", "close");

不知道它在做什么,但删除这一行修复了这个问题。