如何在vue项目中使用websocket

论坛 期权论坛 脚本     
匿名技术用户   2021-1-7 21:07   165   0

一般先要在项目中使用websocket对某个数据流进行监听,最好使用全局方式来定义websocket

具体代码如下:

<script>
    export defalut {
        data() {
            return {
                path:"ws://192.168.10.4:8085"
            }
        },
        mounted() {
            this.init()
        },
        methods: {
            init() {
                if(typeof(WebsSocket) === 'undefined') {
                    alert('当前浏览器不支持socket')
                }else {
                    // 实例化socket
                    window.mysocket = new WebSocket(this.path)
                    // 建立连接
                    window.mysocket.onopen = this.open()
                    // 监听错误信息
                    window.mysocket.onerror = this.error()
                    // 监听消息
                    window.mysocket.onmessage = this.getMsg()
                }
            },
            open() {
                console.log('socket连接成功')
            },
            error() {
                console.log('连接错误')
            },
            sendMsg(data) {
                window.mysocket.send(data)
            },
            getMsg(msg){
                console.log(msg.data)
            },
            close() {
                console.log('socket已关闭')
            }
        }
    }
</script>

如果想要mysocket只作用于当前页面,就无须使用window来初始化,直接使用this即可;

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP