,它的请求步骤为:
浏览器与服务器建立tcp协议
浏览器发送请求
服务端接收请求,回复消息
浏览器接收消息
tcp连接关闭
http协议的特点就是即连即关,每次接收到消息就关闭连接,并且需要浏览器主动请求服务器才能获取到消息...举个例子,在聊天室需求中,A和B互相通信的实现:
A不断的请求服务器,B有没有给我发送消息(主动请求服务器,询问有没有新消息)
B不断的请求服务器,A有没有给我发送消息(主动请求服务器,询问有没有新消息...在这个例子中,我们发现,A和B如果需要获取到对方是否有没有发送消息,必须不断的请求服务器,主动询问服务器是否有消息.
那么,不断的间隔是多少呢?1秒10次?10秒一次?...1秒10次不断的请求服务器,服务器能承受住吗?10秒一次?那A发送一条消息,B就得10秒后才能收到,消息延时太过于厉害.
那么,有没有办法,使得服务器主动给浏览器发消息呢?...服务端如果支持websocket,将会给客户端返回(升级成功),如果不支持,则会输出正常的http数据
客户端接收服务端返回的消息,如果支持,则连接保持,不支持则报错并断开
连接保持,这时候,客户端和服务端即可互相发消息