socket.io-parser模块

socket.io-parser模块负责处理数据包的编码与解码。对于非二进制数据包,直接拼接属性并转换data为JSON。而对于二进制数据包,将Blob和File转化为ArrayBuffer,用占位符替换二进制附件,附带attchments属性。解码时,先字符串解码,然后根据attchments接收并替换二进制附件,最终发送decoded事件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

index.js

var debug = require('debug')('socket.io-parser');
var Emitter = require('component-emitter');
var hasBin = require('has-binary2');
var binary = require('./binary');
var isBuf = require('./is-buffer');

//版本
exports.protocol = 4;

//数据包类型
exports.types = [
  //连接数据包
  'CONNECT',
  //断开连接
  'DISCONNECT',
  //事件数据包
  'EVENT',
  //应答数据包
  'ACK',
  //错误数据包
  'ERROR',
  //二进制事件数据包
  'BINARY_EVENT',
  //二进制应答数据包
  'BINARY_ACK'
];


exports.CONNECT = 0;

exports.DISCONNECT = 1;

exports.EVENT = 2;

exports.ACK = 3;

exports.ERROR = 4;

exports.BINARY_EVENT = 5;

exports.BINARY_ACK = 6;

exports.Encoder = Encoder;

exports.Decoder = Decoder;

//编码器构造函数,工具对象,不需要什么属性
function Encoder() {}

//对象数据包编码,并且发送编码后数据
Encoder.prototype.encode = func
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值