http不是无状态协议吗?为什么能有长轮询和http流这种持续链接的comet方法?

如题,comet在长轮询和http流这两种方法工作的时候,链接是持续存在,以方便服务器推送对吧?拿http不是无状态协议吗?

newsudhc3634140
浏览 2462回答 3
3回答

qq_冲哥_0

Http 是无状态协议。 无状态协议指得是 客户端发起一个请求,服务端接受请求进行响应,返回响应, 客户端对响应进行解析。这是一个流程,这个流程结束了,客户端和服务器就没有联系了。下一次请求,需要客户端重新发送请求,客户端在响应,又要重复一个流程。服务器不会记住上一次的请求。 无论什么时候,都是客服端发起请求,服务端进行响应。服务器永远记不住客户端,主动向客户端推送响应。 长轮询,主要存在通信的一个流程中。还是客户端发起请求, 服务端进行响应,但这时响应并不是立即响应,而是服务端进行请求挂起,不立即响应(这需要服务端进行编码实现的),等待有变化后才进行响应,客户端接受响应, 进行解析。这一次流程结束。 长轮询也是请求响应,只不过是时间长点。如果还要从服务端获取数据,那么 客户端还是要重新发起请求, 浏览器进行响应。 他不会记住上一次的请求,无状态的。

程俊健

http是超文本传输协议
打开App,查看更多内容
随时随地看视频慕课网APP