当前位置: 首页 > news >正文

做网页收集素材常用的网站有哪些婚庆网站建设方案

做网页收集素材常用的网站有哪些,婚庆网站建设方案,深圳口碑最好的装修公司排名,安居网站建设文章目录 1. 消息推送常用方式介绍2. WebSocket2.1 介绍2.2 客户端API2.3 服务端API 3. 总结 1. 消息推送常用方式介绍 轮询 浏览器以指定的时间间隔向服务器发出HTTP请求#xff0c;服务器实时返回数据给浏览器。 长轮询 浏览器发出ajax请求#xff0c;服务器端接收到请求… 文章目录 1. 消息推送常用方式介绍2. WebSocket2.1 介绍2.2 客户端API2.3 服务端API 3. 总结 1. 消息推送常用方式介绍 轮询 浏览器以指定的时间间隔向服务器发出HTTP请求服务器实时返回数据给浏览器。 长轮询 浏览器发出ajax请求服务器端接收到请求后会阻塞请求直到有数据或者超时才返回。 SSE server-sent-event服务器发送事件 SSE是在服务器和客户端之间打开一个单向通道服务器通向客户端。 服务器响应的不再是一次性的数据包而是text/event-stream类型的数据流信息。 服务器有数据变更时将数据流式传输到客户端。 2. WebSocket 2.1 介绍 WebSocket是一种在基于TCP连接上进行全双工通信的协议。 说明 全双工允许数据在两个方向上同时传输。半双工允许数据在两个方向上传输但是同一个时间段内只允许一个方向上传输。 2.2 客户端API websocket对象创建 let ws new WebSocket(URL);URL说明 格式协议://ip地址:端口/访问路径协议协议名称为ws websocket对象相关事件 事件事件处理程序描述openws.onopen连接建立时messagews.onmessage客户端接受到服务器发送到数据时触发closews.onclose连接关闭时触发errorws.onerror发生错误时触发 websocket对象提供的方法 send()通过websocket对象调用该方法发送数据给服务端。 scriptlet ws new WebSocket(ws://localhost:8080/chat)ws.onopen function (){}ws.onmessage function (evt) {console.log(evt)}ws.onclose function () {}ws.onerror function (){} /script2.3 服务端API Tomcat的7.0.5版本开始支持websocket并且实现了Java websocket规范。 Java websocket应用由一系列的Endpoint组成。Endpoint是一个java对象代表WebSocket链接的一端对于服务端我们可以视为处理具体websocket消息的接口。 我们可以通过两种方式定义Endpoint 第一种是编程式即继承类javax.websocket.Endpoint并实现其方法。第二种是注解式即定义一个POJO并添加ServerEndpoint相关注解。 Endpoint实例在WebSocket握手时创建并在客户端与服务端链接过程中有效最后在链接关闭时结束。在Endpoint接口中明确定义了与其生命周期相关的方法规范实现者确保生命周期的各个阶段调用实例的相关方法。生命周期方法如下 方法描述注解onOpen()当开启一个新的会话时调用该方法是客户端与服务器端握手成功后调用的方法OnOpenonClose()当会话关闭时调用OnCloseonError()当连接过程异常时调用OnError 服务器端接受客户端数据 编程式 通过添加MessageHandler消息处理器来接收消息 注解式 在定义Endpoint时通过OnMessage注解指定接收消息的方法 服务器端推送数据到客户端 发送消息则由RemoteEndpoint完成其实例由Session维护。 发送消息有2种方式 通过session.getBasicRemote获取同步消息发送的实例然后调用其sendXXX()方法发送消息。通过session.getAsyncRemote获取异步消息发送实例然后调用其sendXXX()方法发送消息。 ServerEndpoint(/chat) Component public class ChatEndpoint {OnOpenpublic void onOPen(Session session,EndPointConfig config){}OnMessagepublic void onMessage(String message){}OnClosepublic void onClose(Session session){} }3. 总结 新建SpringBoot项目导入依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId /dependency dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-websocket/artifactId /dependency编写配置类扫描所有添加ServerEndpoint注解的Bean Configuration public class WebSocketConfig {Beanpublic ServerEndpointExporter serverEndpointExporter() {return new ServerEndpointExporter();} }编写配置类用户获取HttpSession对象 Configuration public class GetHttpSessionConfigurator extends ServerEndpointConfig.Configurator {Overridepublic void modifyHandshake(ServerEndpointConfig sec, HandshakeRequest request, HandshakeResponse response) {HttpSession session (HttpSession) request.getHttpSession();// 将HttpSession对象存储到配置对象中sec.getUserProperties().put(HttpSession.class.getName(), session);} }在ServerEndpoint注解中引入配置器 ServerEndpoint(value /chat,configurator GetHttpSessionConfigurator.class)创建ChatEndPoint Component ServerEndpoint(value /chat,configurator GetHttpSessionConfigurator.class) public class ChatEndpoint {private static final MapString, Session onlineUsers new ConcurrentHashMap();private HttpSession httpSession;OnOpenpublic void onOpen(Session session, EndpointConfig config) {this.httpSession (HttpSession) config.getUserProperties().get(HttpSession.class.getName());}public void broadcastAllUser(){}OnMessagepublic void onMessage(String message, Session session) {}OnClosepublic void onClose(Session session, CloseReason closeReason) {} }服务器向客户端发送消息 session.getAsyncRemote().sendText(...);客户端向服务器发送消息 let ws new WebSocket(ws://localhost:8080/chat) ws.send(xxx);
http://www.w-s-a.com/news/737645/

相关文章:

  • wordpress theme sage网站seo优化加推广
  • 建设一个大型电影网站公司网站建设工作总结
  • 传奇网站一般怎么做的宇泽佛山网站建设
  • google网站入口电商运营十大基础知识
  • 建设公司网站的细节中国建设网网站
  • 重庆美邦建网站宝安网页设计
  • 建网站的地址十堰做网站
  • 怎么评判一个网站做的好与坏专做情侣装网站
  • 网站管理助手v3历史上的今天 网站如何做
  • 网站建设与管理的就业方向网站开发前端模板
  • 对网站建设的维护深圳网络推广推荐
  • wordpress多站共享授权码wordpress数据库缓存插件
  • 建一个购物网站多少钱上海商标注册
  • 琪觅公司网站开发面点培训学校哪里有
  • 北京建设工程信息网站江苏企业网站建设
  • php电子商务网站建设wordpress新建的页面如何加xml
  • 去百度建网站外贸业务推广
  • 百度seo 站长工具网络营销课程个人总结3000字
  • 设计品牌网站wordpress商城 中文站
  • 公司网站要备案吗百度售后电话人工服务
  • 北京移动网站建设制作一个购物网站
  • 网站优化排名如何做网络开发工程师
  • 域名已有服务器也有怎么做网站pc 手机网站 微站
  • 鞍山网站设计制作网站最好的外贸网站建设
  • 百度手机模板网站新变更营业执照注册号查了发现之前有备案过网站了
  • 群晖个人网站建设建设网站主机免费版
  • 下载好了网站模板怎么开始做网站阿克苏网站建设价格
  • 有谁做彩票网站学会了vue 能搭建一个网站平台
  • 描述对于营销型网站建设很重要飘红效果更佳教育培训排行榜前十名
  • 国外网站有哪些推荐的网站按关键词显示广告图片