js websocket发送文本与二进制实验
序言
传统的html网页, 其实更适合 http协议
目前的前后端分离架构,其实非常适合 websocket协议通信
所以有必要对websocket 深入研究
js websocket发送文本与二进制实验
- js 中 websocket .send () 可以发送 String | arraybuffer(二进制),
两种格式的数据, 不需要特殊处理,这个特点非常重要 - socket 通信在百度小程序中地址必须是合法域名, 局域网地址是受限的 ,否则无法发送
- 经过试验 发现 uni-app 在浏览器和andriod下
uni.sendSocketMessage() 同样可以发送两种格式
苹果和微信小程序没有测试
因为实验用到了一些内部函数 例如: bfun.json2Bytes(), _IS.isMap||_IS.isArray, 所以只是给出关键实验代码
// 发送
var msg = {er:"点对"}
let bs=bfun.json2Bytes(msg)
console.log(bs)
socket.send(bs);
msg.er="231245下次!@#%^&V";
let txt=JSON.stringify(msg)
socket.send(txt);
//接收if (_IS.isString(data))
console.log("数据1",data);
else if(_IS.isMap||_IS.isArray)
console.log("数据2", bfun.bytes2Json(data) );
js websocket发送文本与二进制实验相关推荐
- js websocket同步等待_WebSocket硬核入门:200行代码,教你徒手撸一个WebSocket服务器...
本文原题"Node.js - 200 多行代码实现 Websocket 协议",为了提升内容品质,有较大修订. 1.引言 最近正在研究 WebSocket 相关的知识,想着如何能自 ...
- socket服务器断开消息,详解JS WebSocket断开原因和心跳机制
1.断开原因 WebSocket断开的原因有很多,最好在WebSocket断开时,将错误打印出来. ws.onclose = function (e) { console.log('websocket ...
- 基于Node.js + WebSocket 的简易聊天室
代码地址如下: http://www.demodashi.com/demo/13282.html Node.js聊天室运行说明 Node.js的本质就是运行在服务端的JavaScript.Node.j ...
- python能以文本和二进制方式处理文件_Python文件处理之文件写入方式与写缓存(三)...
Python的open的写入方式有: write(str):将str写入文件 writelines(sequence of strings):写多行到文件,参数为可迭代对象 首先来看下writelin ...
- Node.js websocket/ws 详解
前言 众所周知,HTTP协议是一种无状态.无连接.单向的应用层协议,只能由客户端发起请求,服务端响应请求. 这就显示了一个明显的弊端:服务端无法主动向客户端发起消息,一旦客户端需要知道服务端的频繁状态 ...
- JS Websocket 常用代码
var ws = new WebSocket("ws://localhost:9990/ws");//readyState属性返回实例对象的当前状态,共有四种.//CONNECTI ...
- linux命令 socket,如何从linux中的命令行向socket.io websocket发送消息?
是否可以使用linux中的命令行向我的localhost服务器(节点)发送socket.io消息?我不确定这是否可行--从稀缺的谷歌搜索结果来看,我猜这不可能或不复杂-- 我的socket.io代码如 ...
- 计算机中的二进制实验报告,大学计算机实验报告(共5篇).doc
大学计算机实验报告(共5篇) 大学计算机实验报告(共5篇) 学号姓名:班级:实验时间: 实验报告表2-1 数值型数据在计算机中的二进制实验记录表 说明:本实验对计算机内存数据的存放拟定为:整数用两个字 ...
- C# 实现读取电子秤数据-通过websocket发送数据给本地网页
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
最新文章
- Retrofit 入门和提高
- jenkins搭建流程
- 思考 | 人工智能时代:AI芯片能否实现弯道超越?
- QT的QColorDialog类的使用
- SQL Server报错:选择列表中的列无效,因为该列没有包含在聚合函数或 GROUP BY 子句中...
- 抖音右上角一个小黄点是什么_抖音官方入驻视频号,释放了一个什么样的信号?...
- 电子工程学院的师兄弟姐们们,老师叫你们回家
- javaweb实训第六天下午——Mybatis基础
- Hotel 旅馆 题解(From luoguBlog)
- 微信小程序生成推广二维码
- 夜曲歌词 拼音_《夜曲 - (原唱:周杰伦)》歌词 《夜曲 - (原唱:周杰伦)》LRC歌词?...
- 奥运五环(一键复制)
- windows(微软知识库)可以根据事件ID查看 各种事件
- 2019年4月27号,下雨杂谈
- python函数介绍(20804字的带图超详细说明)
- 程序员也学点财报--《一本书读懂财报》脑图
- 互融云区块链溯源防伪系统开发,超高并发,全程追溯
- iPhone X测试烧屏软件,iPhone X烧屏测试,亮屏3天后才会发生
- Python-MSO系列示波器图片直接传输图片至本地的方法记录
- 豆瓣8.0!烂番茄99%鲜!苹果高分冲奥动画《狼行者》精彩幕后来了!
热门文章
- OPPO Watch 3溢彩蓝清凉登场,智能夏日抬腕即刻触达
- 火绒安全一面病毒样本分析
- 网站在制作时用静态页面好还是动态页面利于网站优化
- 服务器的配置该如何选择
- C# 的DateTime的12小时和24小时制
- cetus权限连接主从mysql_cetus/cetus-rw.md at master · sqlercn/cetus · GitHub
- 网易cetus数据库中间件安装-读写分离版本
- resultset java 类型_关于JAVA中Resultset的类型
- 网络流(2)——用Ford-Fullkerson算法寻找最大流
- 7.4【微信小程序全栈开发课程】小程序上线--基于Ubuntu搭建小程序运行环境