我的Android应用每隔10秒就会向servlet发送一次数据。 servlet接收第一个请求并作出响应。但是servlet没有收到客户端在接下来的10秒后发送的第二组数据。有人可以打电话给我,我该怎么做呢。它与会话有关吗?
答案 0 :(得分:3)
Http不是持久连接协议。您应该考虑为您需要发送的每组数据发出一个http请求。
如果持久连接是强制性的(但我真的没有看到会强迫你做什么),那么你必须使用TCP协议...而且你将无法使用servlet服务器端,但是特定的应用程序正在侦听特定的TCP端口。
答案 1 :(得分:0)
这听起来就像是重用现有的URLConnection
,而不是为每个请求创建一个新的,并且您通过空catch块来抑制异常/或忽略了stderr。
对于每个独立请求,您必须创建新 URLConnection
。
URL url = new URL("http://example.com");
// First request.
URLConnection connection1 = url.openConnection();
// Process it...
// Second request.
URLConnection connection2 = url.openConnection();
// Process it...
// Etc...
当servlet在HttpSession
中存储您希望在后续请求中重新访问的内容时,会话管理才会出现。这似乎不是这种情况。