WebSocket和WebSocket聊天室

本文介绍了WebSocket这一HTML5的新特性,作为一种持久化的协议,WebSocket能够实现客户端与服务器之间的全双工通信,解决了传统HTTP通信中服务器无法主动推送消息的问题。文中还分享了一个简单的聊天室示例。

1、前言

最近在公司的项目里发现了一个很有意思的东西:WebSocket。刚发现时觉得这东西太神奇了,竟然可以实现客户端(浏览器) 和服务器的全双工通信,使得服务器也可以主动地推送消息给客户端了。
既然发现了这么神奇的东西,那当然就禁不住手痒,自己也想去试试了。

2、什么是WebSocket

WebSocket是HTML5中的一个新的协议(新的API)。
它是一个持久化的协议,相对于HTTP这种非持久的协议来说。实现客户端(浏览器) 和服务器的全双工通信。在HTTP中,是不支持持久连接的且无状态的,一般都是由客户端发起一次request请求,然后服务器返回一次response结果,这样算一次HTTP请求。到了HTTP1.1,情况有了一些改变,有了keep-alive,在一次HTTP请求中,可以有多个request和response了,可是在这里,response还是被动的,也就是说只有request,才有response。那么对于一些时效性比较强的,如即时通信、实时数据、订阅推送等功能,我们就只能使用ajax轮询或长连接去完成,但是这样做可能会有很多不必要的请求,或者增加服务器的压力。
就在这时,WebSocket闪亮登场了,它真正的实现了web的实时通信。

3、WebSocket聊天室

既然这么神奇,那么不自己试一下怎么行哪?
下面就是我做的简易版(破烂版)聊天室。
ps:代码写得我自己都觉得很烂,请容我慢慢改进 [囧rz=З]

简易版(破烂版)聊天室链接

↑↑↑↑↑↑↑
(点点呗,反正不花钱[害羞])

4、大牛的解释

我知道自己的博客写得很烂 [囧rz=З],如果想了解更多的WebSocket,请看链接。

知乎搞笑版:https://www.zhihu.com/question/20215561/answer/40316953

java实现WebSocket服务器版:http://www.cnblogs.com/xdp-gacl/p/5193279.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值