| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> Vue里怎么使用socket?(websocket) -> 正文阅读 |
|
[网络协议]Vue里怎么使用socket?(websocket) |
第一步:封装socket.js import { Message } from 'iview'; class Socket { ? ? ? ? constructor (wsurl, binaryType){ ? ? ? ? ? ? ? ? this.wsurl = wsurl ? ? ? ? ? ? ? ? this.websock = null ? ? ? ? ? ? ? ? this.binaryType = binaryType ? ? ? ? ? ? ? ? this.initWebSocket() ????????} ? ? ? ? initWebSocket(){ ? ? ? ? ? ? ? ? var that = this ? ? ? ? ? ? ? ? this.websock?= new WebSocket(this.wsurl) ? ? ? ? ? ? ? ? if(this.binaryType){ ? ? ? ? ? ? ? ? ? ? ? ? this.websock.binaryType = this.binaryType ????????????????} ? ? ? ? ? ? ? ? this.websock.onmessage = function(e){ ? ? ? ? ? ? ? ? ? ? ? ? that.webMessage(e) ????????????????} ? ? ? ? ? ? ? ? this.websock.onclose = function(e){ ? ? ? ? ? ? ? ? ? ? ? ? that.webClose(e) ????????????????} ? ? ? ? ? ? ? ? this.websock.onopen = function(){ ? ? ? ? ? ? ? ? ? ? ? ? that.webOpen() ????????????????} ? ? ? ? ? ? ? ? this.websock.onerror = function(){ ? ? ? ? ? ? ? ? ? ? ? ? Message.error('websocket连接中断!请刷新重试') ????????????????} ????????} ? ? ? ? ?sendSock(agentData, callback){ ? ? ? ? ? ? ? ? this.callback = callback ? ? ? ? ? ? ? ? if(agentData){ ? ? ? ? ? ? ? ? ? ? ? ? if(this.websock.readyState === this.websock.OPEN){ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? this.webSend(agentData) ????????????????????????} else if(this.websock.readyState === this.websock.CONNECTING){ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? let that = this ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? setTimeout(function(){ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? that.webSend(agentData) ????????????????????????????????}, 300) ????????????????????????}else{ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? this.initWebSocket() ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? let that = this ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? setTimeout(function(){ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? that.webSend(agentData) ????????????????????????????????}, 500) ????????????????????????} ????????????????} ????????}? ? ? ? ? ? ? ? webMessage(e){ ? ? ? ? ? ? ? ? this.callback(e) ????????} ? ? ? ? webSend(agentData){ ? ? ? ? ? ? ? ? this.websock.send(agentData)???????? ????????} ? ? ? ? webClose(e){ ? ? ? ? ? ? ? ? this.websock.close() ????????} ? ? ? ? webOpen(){} } export default Socket 第二步:在vue文件里引入使用 socket的使用 //引入socket import socket from "@/libs/socket.js"; //根据自己放的路径来引入socket methods:{ ? ? ? ? //socket操作 ? ? ? ? initWebsocket(){ ? ? ? ? ? ? ? ? console.log("初始化websocket"); ? ? ? ? ? ? ? ? if(!this.websocket){ ? ? ? ? ? ? ? ? ? ? ? ? this.websocket = new socket( ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //这里填写要请求socket的url字符串 ????????????????????????) ? ? ? ? ? ? ? ? ? ? ? ? this.websocket.sendSock("", this.websocketonmessage); ????????????????} ????????}, ? ? ? ??websocketonmessage(e){ ? ? ? ? ? ? ? ? console.log(e.data) ????????}, ? ? ? ? closeWebSocket(){ ? ? ? ? ? ? ? ? if(this.websocket != null){ ? ? ? ? ? ? ? ? ? ? ? ? this.websocket.webClose(); ????????????????} ????????} }, mounted(){ ? ? ? ? this.initWebsocket() }, beforeDestroy(){ ? ? ? ? this.closeWebSocket() } |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 18:42:57- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |