WebSocket 简单示例

  • 内容
  • 评论
  • 相关

一、WebSocket简介

WebSocket API是下一代客户端-服务器的异步通信方法。该通信取代了单个的TCP套接字,使用ws或wss协议,可用于任意的客户端和服务器程序。WebSocket目前由W3C进行标准化。WebSocket已经受到Firefox 4、Chrome 4、Opera 10.70以及Safari 5等浏览器的支持。

WebSocket API最伟大之处在于服务器和客户端可以在给定的时间范围内的任意时刻,相互推送信息。WebSocket并不限于以Ajax(或XHR)方式通信,因为Ajax技术需要客户端发起请求,而WebSocket服务器和客户端可以彼此相互推送信息;XHR受到域的限制,而WebSocket允许跨域通信。

Ajax技术很聪明的一点是没有设计要使用的方式。WebSocket为指定目标创建,用于双向推送消息。

更多关于WebSocket的介绍,感兴趣的可以异步IBM学习社区关于WebSocket讲解。传送门:>>> https://www.ibm.com/developerworks/cn/java/j-lo-WebSocket/

二、WebSocket简单示例:这个简单的示例是我在网上看了一些Demo自己也尝试着做了一个。

1、项目结构:

2、POM.xml:

3、前端Web页面代码:

4、后端Java代码

5、运行,上效果图。

这个Demo在JDK 1.7 + Tomcat 7.0.81下测试可以正常运行。

如果WebSocket连接错误,错误信息如下:

是因为tomcat在支持websocket的时候需要依赖一个要tomcat-socket的jar,然后在比较低的版本中没有(既表示tomcat不支持)。所以这个时候就需要下载一个支持websocket的高版本tomcat来运行了。

在网上有看到有人说是,JavaEE 7中出了JSR-356:Java API for WebSocket规范。不少Web容器,如Tomcat,Nginx,Jetty等都支持WebSocket。Tomcat从7.0.27开始支持 WebSocket,从7.0.47开始支持JSR-356,下面的Demo代码也是需要部署在Tomcat7.0.47以上的版本才能运行。

 

评论

0条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注