java httpservlet想实现服务器每过30min向客户端发出一次请求,希望客户端上传符合条件的数据,跪求
现在是客户端先和httpservlet建立连接,然后服务器发送想要数据的要求。客户端上传符合要求的数据。想知道以下几个问题:建立连接以后是一直能够通信吗?服务器怎么实现每...
现在是客户端先和httpservlet建立连接,然后服务器发送想要数据的要求。客户端上传符合要求的数据。想知道以下几个问题:
建立连接以后是一直能够通信吗?
服务器怎么实现每隔30min给所有连接它的客户端发请求呢?
要是有代码举例子就更好了,实在感谢了。是不是能用httpclient和httpservlet实现呢? 展开
建立连接以后是一直能够通信吗?
服务器怎么实现每隔30min给所有连接它的客户端发请求呢?
要是有代码举例子就更好了,实在感谢了。是不是能用httpclient和httpservlet实现呢? 展开
1个回答
展开全部
首先服务器是不能想客户端发送Http请求的,http请求是request/response的模式,服务器端始终是response客户端的请求的,当前线程的session一旦关闭客户端就和服务器端没什么关系了,至于你说的这种现象,可以用前端技术实现,在html上面写一个脚本,每隔半小时提示一下。
追问
问一下,可以让客户端发送请求,然后服务器接收这个请求,弄一个计时器,每半个小时回应一次这样子么?就是相当于让这个连接不断掉,然后服务器从接收到请求之后每半个小时通知客户端发一次数据这样?这样能实现么?
追答
这样是不行的,因为HTTP请求的特性决定的,不能一直连着不放,只要服务器端response回数据给客户端,那么此次请求就结束了,并且即便是可以连接半小时也不推荐这样做,这样对资源是一种很大的浪费,这是做也是开发中很忌讳的东西。你这种情况就让前端来控制就行了,半小时请求一次服务器,让服务器返回需要的数据。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询