socket现在用的还是很多的,在一些直播间内。所以下面就说一说js连接socket的方法。
先定义一些方法:以下是代码注释很详细,可以多看看注释
initWebSocket方法----在你想要什么时候链接的时候调用就行了!
这个是没有封装的原始代码,有兴趣的可以封装一下。

         // websocket初始化initWebSocket() {// 这里是new一个socket实例。后面填写socket服务器地址,应该都有端口号的。还可以传其他的参数,具体的可以搜一下socket初始化的一些参数。this.websocket = new WebSocket(this.$Url.ChatWebSocket);// 连接错误this.websocket.onerror = this.setErrorMessage;// 连接成功this.websocket.onopen = this.setOnopenMessage;// 收到消息的回调this.websocket.onmessage = this.screenMsg;// 连接关闭的回调this.websocket.onclose = this.setOncloseMessage;// 监听窗口关闭事件,当窗口关闭时,主动去关闭websocket连接,防止连接还没断开就关闭窗口,server端会抛异常。window.onbeforeunload = this.onbeforeunload;},// 监听窗口关闭事件onbeforeunload() {this.websocket.close();},// socket连接失败回调setErrorMessage(res) {console.log('连接失败', res);this.socketclose = true;},// socket连接成功回调setOnopenMessage(res) {this.socketclose = false;console.log('websocket连接已打开');// socket链接成功后在发送登录socket的验证方式。当然你们的socket不需要登录的话,下面登录可以删掉。let data = {type: 'login',user_id: this.uid,room_id: this.room_id};this.websocket.send(JSON.stringify(data));},// scoket关闭回调setOncloseMessage(res) {console.log('连接已关闭');// this.socketclose = true;},//接收socket信息screenMsg(res) {// socket返回的数据是JSON格式的需要转换一下。var datas = JSON.parse(res.data)}

给socket发送消息的方式就是上面那个,scoket链接成功回调里面-登录的方式,按照你们后台的需要的type进行交互。socket主动给你发的消息会出现在 接收消息回调的function里面。可以打印一下解析后的datas。进行接收消息后的操作!

socket连接方法,socket使用方法。js连接socket相关推荐

  1. android studio socket 失败,Android应用开发Android Studio建立Socket连接失败解决方法

    本文将带你了解Android应用开发Android Studio建立Socket连接失败解决方法,希望本文对大家学Android有所帮助. < Android Studio建立Socket连接失 ...

  2. php中使用Curl、socket、file_get_contents三种方法POST提交数据

    抓取远程内容,之前一直都在用file_get_content函数,其实早就知道有curl这么一个好东西的存在,但是看了一眼后感觉使用颇有些复杂,没有file_get_content那么简单,再就是需求 ...

  3. centos mysql拒绝连接失败_CentOS下mysql远程连接的失败的解决方法

    mysql远程连接失败的解决方法(CentOS版) (1)先将mysql服务停掉 # /etc/init.d/mysqld stop (2)查看mysql配置文件 # vi /etc/my.cnf 特 ...

  4. Java Socket 客户端使用指定端口多次连接服务器引发 BindException

    有这样一个需求,客户端要用特定端口连接服务器,可以用bind方法绑定一个本地的InetAddress,第一次连接是ok的,但是第二次连接就会报 BindException 异常(Bind: Addre ...

  5. python连接oracle数据库的方法_Python3.6连接Oracle数据库的方法详解

    本文实例讲述了Python3.6连接Oracle数据库的方法.分享给大家供大家参考,具体如下: 下载cx_Oracle模块模块: https://pypi.python.org/pypi/cx_Ora ...

  6. C# 网络编程之使用Socket类Send、Receive方法的同步通讯

    经过几天学习,终于解决了再C#网络编程中使用Socket类Send和Receive方法开发的客户端和服务端的同步通讯程序:实现了又客户端想服务器发送消息的界面程序.主要使用的方法是:       1. ...

  7. JVM学习笔记之-运行时数据区概述及线程概述,程序计数器(PC寄存器),虚拟机栈(栈,局部变量表,操作数栈,动态连接,方法调用,方法返回地址等),本地方法接口,本地方法栈

    运行时数据区概述及线程概述 内存是非常重要的系统资源,是硬盘和CPU的中间仓库及桥梁,承载着操作系统和应用程序的实时运行.JVM内存布局规定了Java在运行过程中内存申请.分配.管理的策略,保证了JV ...

  8. wdcp安装mysql_安装wdCP,无法连接mysql,解决方法

    安装wdCP,无法连接mysql,解决方法 在ubuntu 12.04版本上安装wdCP,采用编译安装的方式,一路装下来最后悲催地报错了: ERROR 2002 (HY000): Can't conn ...

  9. (转)API SOCKET基础(一) TCP建立连接并通信

    写这篇日志,并不是要记录令人眼前一亮的算法,只是为了本人健忘的脑袋做一点准备. 要进行网络通信编程,就要用到socket(套接字),下面以TCP为例展示如何利用socket通信. 要 进行socket ...

最新文章

  1. java的关键字和保留字_「Java」详解常见的53个关键字
  2. ASP.NET MVC – HTML 帮助器简介
  3. Js高设笔记1-2章 defer and async
  4. asp.net控件开发基础(20)
  5. c51 嵌入汇编语言,在C51中嵌入汇编
  6. ubuntu 下安装和启动SSH 服务
  7. nginx php value,Nginx 设置 PHP_VALUE 的灵异问题
  8. Spark源码学习1.6——Executor.scala
  9. jQuery实现点击行(tr)选中某列中CheckBox
  10. iOS应用开发应遵循的10条设计原则
  11. 50款PS完美汉化插件一键安装,win+mac
  12. 也谈VC中ModifyStyleModifyStyleEx无法改变控件的Style)
  13. C++if语句进行分段函数计算
  14. Qt交叉编译移植arm开发板
  15. 心无界,牧云端:华为云与人工智能的野望
  16. 苹果邮箱怎么登录qq邮箱_怎么登陆邮箱?公司mail邮箱在哪登录?
  17. 龙芯粉的“芯”动日记
  18. android.view.WindowLeaked的解决办法 has leaked window android.widget.PopupWindow$PopupDecorView
  19. 利用递推公式的特征方程求解通项公式
  20. dataframe 设置空值_数据清洗--DataFrame中的空值处理方法

热门文章

  1. Kafka命令行常用命令说明
  2. 读取Excel表格内容转为Sql when then语句
  3. 江南大学计算机面试英语,江南大学英语面试!!!
  4. 认识柯里化函数及其应用
  5. matlab 儒略历 函数,儒略日(儒略日 在线计算器)
  6. CRC-CCITT 标准CRC16(1021) 算法校验类
  7. 海康8300平台改造要点
  8. 2015广东强网杯web专题
  9. STM32—规则通道和注入通道的知识总结
  10. 60V输入电压LDO,MST56XXB