使用 websocket 发送请求

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

一、

data() {
    return {
        path: 'ws://localhost:7771',
        ws: {}
    }
},
created() {
    this.init()
},
destroyed() {
    // 离开路由之后断开 websocket 连接
    this.ws.close()
},
methods: {
    //init函数可在页面加载的时候就进行初始化或者根据自己的业务需求在需要打开通讯的时候在进行初始化
    init() {
    // 实例化socket,这里的实例化直接赋值给this.ws是为了后面可以在其它的函数中也能调用websocket方法,例如:this.ws.close(); 完成通信后关闭WebSocket连接
      this.ws = new WebSocket(this.path)
      // 监听是否连接成功
      this.ws.onopen = () => {
        console.log('ws连接状态:' + this.ws.readyState, '连接成功!')
        // 连接成功则发送一个数据
        this.ws.send('连接成功')
      }
      // 接听服务器发回的信息并处理展示
      this.ws.onmessage = (data) => {
        console.log('接收到来自服务器的消息:', data)
      }
      // 监听连接关闭事件
      this.ws.onclose = () => {
        // 监听整个过程中websocket的状态
        console.log('ws连接状态:' + this.ws.readyState, '关闭!')
      }
      // 监听并处理error事件
      this.ws.onerror = function(error) {
        console.log(error, '错误!')
      }
    }
}

二、

data() {
    return {
        websock: null
    }
},
beforeMount() {
    this.initWebSocket()
},
destroyed() {
    // 离开路由之后断开 websocket 连接
    this.websock.close()
},
methods: {
    // 初始化weosocket
    initWebSocket() {
      if (typeof (WebSocket) === 'undefined') {
        console.log('您的浏览器不支持WebSocket')
      } else {
        const wsurl = 'ws://localhost:7771'
        // 实例化 WebSocket
        this.websock = new WebSocket(wsurl)
        // 监听 WebSocket 连接
        this.websock.onopen = this.websocketonopen
        // 监听 WebSocket 错误信息
        this.websock.onerror = this.websocketonerror
        // 监听 WebSocket 消息
        this.websock.onmessage = this.websocketonmessage
        this.websock.onclose = this.websocketclose
      }
    },
    // 连接建立之后执行send方法发送数据
    websocketonopen() {
      console.log('socket连接成功')
      const actions = { test: '12345' }
      this.websocketsend(JSON.stringify(actions))
    },
    // 连接建立失败重连
    websocketonerror() {
      console.log('连接错误')
      this.initWebSocket()
    },
    // 数据接收
    websocketonmessage(e) {
      const resdata = JSON.parse(e.data)
      console.log(resdata)
    },
    // 数据发送
    websocketsend(Data) {
      this.websock.send(Data)
    },
    // 关闭
    websocketclose(e) {
      console.log('WebSocket 断开连接', e)
    }
}

三、

data() {
    return {
        paths: 'ws://localhost:7771',
        socket: ''
    }
},
mounted() {
    // 初始化
    this.inits()
},
methods: {
    inits() {
      if (typeof (WebSocket) === 'undefined') {
        alert('3ws您的浏览器不支持socket')
      } else {
        // 实例化socket
        this.socket = new WebSocket(this.paths)
        // 监听socket连接
        this.socket.onopen = this.open
        // 监听socket错误信息
        this.socket.onerror = this.error
        // 监听socket消息
        this.socket.onmessage = this.getMessage
      }
    },
    open: function() {
      console.log('3ws socket连接成功')
    },
    error: function() {
      console.log('3ws 连接错误')
    },
    getMessage: function(msg) {
      console.log(msg.data)
    },
    send: function(params) {
      console.log('send ws3')
      this.socket.send(params)
    },
    close: function() {
      console.log('3ws socket已经关闭')
    }
}

WebSocket刷新断开原因、设计心跳机制防止自动断开连接问题请访问以下链接:

WebSocket刷新断开原因、设计心跳机制防止自动断开连接_秦岭熊猫的博客-CSDN博客_websocket页面刷新会断开连接吗文章来源地址https://www.toymoban.com/news/detail-511178.html

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

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

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

相关文章

  • Java 实现使用 Websocket 发送消息

    需求背景:之前做了个楼栋房间数量出租了多少,需要在数据大屏上实时展示 解决方案:以切面拦截出租接口,当有房间出租时重新查询相关数据,封装好用websocket实时传送前端展示 提示:以下是本篇文章正文内容,下面案例可供参考 WebSocket 是一种在单个TCP连接上进行全双

    2024年03月27日
    浏览(43)
  • JAVA 使用WebSocket发送通知消息

    注: 1、jdk必须要1.8及以上 2、项目若有接口拦截过滤,WebSocket接口必须要配置拦截,使其可以验证通过 WebSocket 业务类 发送消息的方法 前端代码

    2024年02月11日
    浏览(52)
  • 【前端系列】前端如何使用websocket发送消息

    今天来学习一下前端如何使用websocket发送消息 WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议,它可以让客户端和服务器之间进行实时的双向通信。与传统的 HTTP 请求不同,WebSocket 使用了一个长连接,在客户端和服务器之间保持持久的连接,从而可以实时地发送和接

    2024年02月11日
    浏览(47)
  • create connection SQLException, url: jdbc:mysql//localhost:3306

    出现下图问题: 首先考虑properties中的格式是否正确 其中,localhost:后填入这里的端口号+:/+数据库名 如图,是mysql的workbench界面,填入xxxx后为 localhost:3306/mydb username如图中所示,为root password为你进入数据库时输入的password 不需要加引号 请确保你输入的标点符号一个不落!

    2024年02月12日
    浏览(36)
  • 使用 WebSocket 发送二进制数据:最佳实践

    WebSocket  技术提供了一种在客户端和服务器间建立持久连接的方法,使得双方可以在打开连接后随时发送数据,而不必担心建立复杂的持久连接机制。同时,使用二进制数据,如ArrayBuffer,可以更有效率地传送图像、声音等信息。本指南旨在深入探讨如何使用WebSocket传输二进

    2024年04月09日
    浏览(46)
  • 前端使用websocket发送消息,建立连接(详细)。【前端】

    序言 今天来学习一下前端如何使用websocket发送消息 1.1 什么是WebSocket WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议,它可以让客户端和服务器之间进行实时的双向通信。与传统的 HTTP 请求不同,WebSocket 使用了一个长连接,在客户端和服务器之间保持持久的连接,从

    2024年02月04日
    浏览(43)
  • 微信小程序websocket使用protobuf,发送arraybuffer

    ❤️砥砺前行,不负余光,永远在路上❤️ 这是一次继前文websocket的一个更新:小程序中使用websocket,区分房间、空间 现在遇到了一个需求是小程序接入 io-game 的websocket 和unity 游戏端同时使用一个websocket,io-game那边收发websocket消息都是采用 Protobuf 处理的。 参考项目:htt

    2024年02月15日
    浏览(48)
  • 【AJAX】使用JQ发送AJAX发送请求

    运行结果  获取的响应是字符串,如何把字符串变成JSON对象 方法一:JSON.parse(data) 方法二:设置响应数据类型为json格式 // $.get/post(发送地址, 发送参数{key:value,key:value...} 回调函数(function(data){}[data:响应体]),,\\\'json)     $.get(\\\'http://127.0.0.1:8000/server\\\', { a: 100, b: 200 }, function (data) {

    2024年02月13日
    浏览(49)
  • sanic 使用websocket与前端vue通信,持续发送信息

    由于sanic使用较少,很难获取到有效信息,而且对websocket也是挺“一窍不通”的,因此写一下总结。在使用过程中,对sanic注册websocket,还是使用socketio不清。前端vue是使用io,还是WebSocket还是VueSocketIO。 API:sanic.add_websocket_route是Sanic框架自带的一个方法,用于添加WebSocket路由

    2024年02月11日
    浏览(68)
  • 使用HttpURLConnection发送POST请求并携带请求参数

    这里的param是请求参数,需要将其转换为字节数组后写入输出流。 这里的response是响应数据,需要将其读取为字符串后使用。 完整的示例代码如下所示: 需要注意的是,以上示例代码中的请求参数是以字符串形式传递的,如果需要传递复杂的请求参数,可以考虑使用JSON等格

    2024年02月04日
    浏览(57)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包