webSocket前端+webSocket封装

这篇具有很好参考价值的文章主要介绍了webSocket前端+webSocket封装。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、websocket基础

class MyWebScoket {
  constructor(socketUrl) {
    // super(socketUrl);
    this.onopenFn = null
    this.oncloseFn = null
    this.onmessageFn = null
    this.onerrorFn = null
    this.socketUrl = socketUrl
    this.socket = null
    this.init()
  }

  init() {
    let self = this
    let timeStep = new Date().getTime();
    self.socket = new WebSocket(self.socketUrl + timeStep);
    self.socket.onopen = function (event) {

      if (self.onopenFn) {
        self.onopenFn(event)
      }
    }
    self.socket.onmessageFn = function (event) {
      console.log(event, '连接关闭')
      if (self.onmessageFn) {
        self.onmessageFn(event)
      }
    }
    self.socket.onerrorFn = function (event) {
      console.log(event, 'websocket通信发生错误')
      if (self.onerrorFn) {
        self.onerrorFn(event)
      }
    }
    self.socket.oncloseFn = function (event) {
      console.log(event, '处理业务')
      if (self.oncloseFn) {
        self.oncloseFn(event)
      }
    }
  }
  close() {
    this.socket.close()
  }
}

export default MyWebScoket

2.使用(vue)文章来源地址https://www.toymoban.com/news/detail-553897.html

  import websocket from "./websocket.js"

  setWebsocket(){
      this.socket = new MyWebScoket(socketUrl)//socketUrl请求的地址
      this.socket.onopenFn = this.onopen.bind(this)
      this.socket.oncloseFn = this.onclose .bind(this)
      this.socket.onmessageFn = this.onmessage .bind(this)
      this.socket.onerrorFn = this.onerror.bind(this)
    },
    onopen(event){
      //业务处理
    },
    onclose(event){
      //业务处理
    },
    onmessage(event){
      //业务处理
    },
    onerror(event){
      //业务处理
    },

到了这里,关于webSocket前端+webSocket封装的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue封装和使用websocket

    最近做了一个数据大屏的项目,使用了websocket来实现数据实时更新的需求,简单记录分享一下。 1、WebSocket协议是基于TCP的一种新的网络协议,允许服务端主动向客户端推送数据,实现全双工通信。 2、在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可

    2024年02月06日
    浏览(39)
  • 在vue3中封装使用WebSocket

    上篇文章记录了如何在日常开发过程中引入并使用websocket连接,但是在后续的开发过程中发现之前的写法有点问题,比如说多次引用连接会共用一个心跳,如果一个连接关掉了,后续其他的连接可能被一起关掉等等的bug。 所以在这篇文章里针对上篇文章提供的方法进行改进,

    2024年02月07日
    浏览(42)
  • vue3:websocket的封装与使用

    前言:vue3+pinia项目 1.引入ws 2.新建websocket.js类 3.新建一个pinia Store类 4.页面中使用

    2024年02月02日
    浏览(38)
  • vue2 封装 webSocket 开箱即用

    第一步:    下载 webSocket  第二步:   需要在 main.js 中 引入  第三步:     封装相关的连接和断开    相关代码!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  第四步:  引入使用 到这步接收信息已经OK了(记得和后端配合)    使用

    2024年02月14日
    浏览(39)
  • 基于Vue3封装一个好用的Websocket

    在Vue3中使用Websocket可以让我们轻松地实现实时数据传输。为了方便使用,我们可以封装一个好用的Websocket类。 首先我们需要安装 ws 库来处理Websocket连接,使用以下命令进行安装: 我们可以新建一个 websocket.js 文件,在其中定义一个 Websocket 类,代码如下: 以上代码中,我们

    2024年02月04日
    浏览(92)
  • 在vue项目中webSocket封装(传token)

            在websocket中,目前未提供修改请求头字段的方法,参考其他的一些文章,依照他们的写法依然未能实现传递token,所有我和后端另辟蹊径,把token传在路径里面。         这样写就可以长久的建立链接。

    2024年04月29日
    浏览(29)
  • WebSocket的使用方法(JS前端)

    先来一个常用例子 封装的代码 上面的代码就够用,也可以查看我封装好的 WebSocket 代码(包括心跳机制):点击查看 下面详细说明常用的属性和方法 更全面的官网的文档可以去这里看:点击查看 下面是我总结的内容 WebSocket WebSocket 对象提供了用于创建和管理 WebSocket 连接,

    2024年02月02日
    浏览(41)
  • vue3使用websocket简易封装,包含错误重连机制

    websocket实现的全双工通信,真真太香了,以下是笔者在使用时,自己封装的一个简易js工具。若需要源码,请移步这里 笔者这里会重连3次,重连的过程给与用户提示,3次之后会提示用户手动刷新 这里与后端约定的数据返回,加上type作为接口判断依据,因此这里不一定通用。

    2024年02月11日
    浏览(48)
  • vue2 封装 webSocket 开箱即用(或 uni.connectSocket)

    第一步:    下载 webSocket  第二步:   需要在 main.js 中 引入  第三步:     封装相关的连接和断开    相关代码!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  第四步:  引入使用 到这步接收信息已经OK了(记得和后端配合)    使用

    2024年02月09日
    浏览(47)
  • JavaScript - 判断当前时间是否在指定区间内,例如:9:00~12:00(检查当前时间是否处于规定的两个时间段范围内),适用于 vue.js / uniapp / 微信小程序等前端项目

    例如,您想知道当前时间是否处于 9:00 ~ 12:00 时间区间内,然后根据这个判断进而实现业务逻辑。 如下示例所示, 本文提供一个函数,您只需要传入 2 个时间区间,便可得出当前时间是否在该时间区间范围内: 您可以一键复制,直接粘贴到您的项目中。 您只需要传入开始时

    2024年02月16日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包