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

香港公司怎么做网站搜索引擎优化排名培训

香港公司怎么做网站,搜索引擎优化排名培训,湛江seo哪家好,企业网企业网站制作WebSocket WebSocket是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工通信----浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。 HTTP协议和WebSocket协议对比: HTTP是短链接 WebSocke…

WebSocket

WebSocket是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工通信----浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。

HTTP协议和WebSocket协议对比:

HTTP是短链接

WebSocket是长连接

HTTP通信是单向的,基于请求响应模式

WebSocket和HTTP底层都是TCP连接

服务器长期维护长连接需要一定的成本 各个浏览器支持程度不一 WebSocket 是长连接,受网络限制比较大,需要处理好重连

结论:WebSocket并不能完全取代HTTP,它只适合在特定的场景下使用

应用场景示例:

视频弹幕、网页聊天、体育实况更新、股票基金报价实时更新

入门案例:

实现步骤:

重点在于步骤

案例代码开发,资料已提供

来电提醒

用户下单并且支付成功后,需要第一时间通知外卖商家。

通知形式:语音播报、弹出提示框

设计思路:

通过WebSocket实现管理端页面和服务端保持长连接状态

当客户支付后,调用WebSocket的相关API实现服务端向客户端推送消息

客户端浏览器解析服务端推送的消息,判断是来单提醒还是客户催单,进行相应的消息提示和语音播报

约定服务端发送给客户端浏览器的数据格式为JSON,字段包括:type,orderId,content

type 为消息类型,1为来单提醒 2为客户催单

orderId 为订单id

content 为消息内容

代码开发

OrderServiceImpl

    @Autowiredprivate WebSocketServer webSocketServer;/*** 支付成功,修改订单状态** @param outTradeNo*/public void paySuccess(String outTradeNo) {// 当前登录用户idLong userId = BaseContext.getCurrentId();
​// 根据订单号查询当前用户的订单Orders ordersDB = orderMapper.getByNumberAndUserId(outTradeNo, userId);
​// 根据订单id更新订单的状态、支付方式、支付状态、结账时间Orders orders = Orders.builder().id(ordersDB.getId()).status(Orders.TO_BE_CONFIRMED).payStatus(Orders.PAID).checkoutTime(LocalDateTime.now()).build();
​orderMapper.update(orders);//Map map = new HashMap();map.put("type", 1);//消息类型,1表示来单提醒map.put("orderId", orders.getId());map.put("content", "订单号:" + outTradeNo);
​//通过WebSocket实现来单提醒,向客户端浏览器推送消息webSocketServer.sendToAllClient(JSON.toJSONString(map));///}

那么我们可以直接将只要顾客点击支付,那么就直接将订单状态设置成待接单,具体怎么改可以看我上一天的博客 (其实也就是直接将paySuccess中的代码移到payment中,只要1前端点击支付,那么直接修改订单状态为"待接单");

        //Map map = new HashMap();map.put("type", 1);//消息类型,1表示来单提醒map.put("orderId", orders.getId());map.put("content", "订单号:" + outTradeNo);//通过WebSocket实现来单提醒,向客户端浏览器推送消息webSocketServer.sendToAllClient(JSON.toJSONString(map));///

客户催单

用户在小程序中点击催单按钮后,需要第一时间通知外卖商家。

通知形式:语音播报、弹窗提示框

设计思路:

通过WebSocket实现管理端页面和服务端保持长连接状态

当用户点击催单按钮后,调用WebSocket的相关API实现服务端向客户端推送消息

客户端浏览器解析服务端推送的消息,判断是来单提醒还是客户催单,进行相应的消息提示和语音播报 约定服务端发送给客户端浏览器的数据格式为JSON,字段包括:type,orderId,content

type 为消息类型,1为来单提醒 2为客户催单

orderId 为订单id

content 为消息内容

代码开发:

 Controller层

    /*** 用户催单** @param id* @return*/@GetMapping("/reminder/{id}")@ApiOperation("用户催单")public Result reminder(@PathVariable("id") Long id) {orderService.reminder(id);return Result.success();}
Service层接口
    /*** 用户催单* @param id*/void reminder(Long id);

Service实现类

    /*** 用户催单** @param id*/public void reminder(Long id) {// 查询订单是否存在Orders orders = orderMapper.getById(id);if (orders == null) {throw new OrderBusinessException(MessageConstant.ORDER_NOT_FOUND);}
​//基于WebSocket实现催单Map map = new HashMap();map.put("type", 2);//2代表用户催单map.put("orderId", id);map.put("content", "订单号:" + orders.getNumber());webSocketServer.sendToAllClient(JSON.toJSONString(map));}

Mapper层(已实现)
 

    /*** 根据id查询订单* @param id*/@Select("select * from orders where id=#{id}")Orders getById(Long id);

http://www.dtcms.com/wzjs/513426.html

相关文章:

  • 58同城做网站找谁小型培训机构管理系统
  • 将任意网站提交给google搜索引擎谷歌外贸seo
  • 网站设计顺德电商seo
  • 网站备案的意思网络营销模式下品牌推广途径
  • 徐州百姓网鄞州seo整站优化服务
  • 使用c#语言建设网站优点南通seo
  • 免费网站建设论文百度竞价推广账户优化
  • 网站建设续费是那些seo实战技巧100例
  • 视频网站做漫画互联网销售公司
  • 北京的网站建设公司有哪些百度文章收录查询
  • 三级网站域名解析实体店铺引流推广方法
  • 广州学习做网站建设的学校跨界营销案例
  • 咋么做网站长春网站开发
  • 做网站需要懂什么百度登录
  • 网站建设销售秘籍淘宝店铺推广
  • 沈阳网站设计开发宁波seo外包平台
  • 做推广的网站带宽需要多少长沙建站优化
  • 免费建网站哪个网好百度霸屏推广靠谱吗
  • 怎么用dw英文版做网站网站大全软件下载
  • 免费网站添加站长统计营销策划方案案例
  • 公司网站简历刷新怎么做百度大数据官网
  • 做网站选什么专业湖南网站建设效果
  • WordPress 聊天小工具上海专业seo排名优化
  • 网站做竞价响应式网站 乐云seo品牌
  • nas可以做网站2022最近比较火的营销事件
  • 网站建设都需要什么费用微信推广软件有哪些
  • wordpress获取标签seo推广优化方案
  • 湖州微网站建设网页制作html代码
  • 开发网站制作彩虹云商城网站搭建
  • 大连平台网站建设开封seo公司