- Node.js 教程
- Node.js - 首页
- Node.js - 简介
- Node.js - 环境搭建
- Node.js - 第一个应用程序
- Node.js - REPL 终端
- Node.js - 命令行选项
- Node.js - 包管理器 (NPM)
- Node.js - 回调函数概念
- Node.js - 上传文件
- Node.js - 发送邮件
- Node.js - 事件
- Node.js - 事件循环
- Node.js - 事件发射器
- Node.js - 调试器
- Node.js - 全局对象
- Node.js - 控制台
- Node.js - 进程
- Node.js - 应用程序扩展
- Node.js - 打包
- Node.js - Express 框架
- Node.js - RESTful API
- Node.js - 缓冲区
- Node.js - 流
- Node.js - 文件系统
- Node.js MySQL
- Node.js - MySQL 入门
- Node.js - MySQL 创建数据库
- Node.js - MySQL 创建表
- Node.js - MySQL 插入数据
- Node.js - MySQL 查询数据
- Node.js - MySQL 条件查询
- Node.js - MySQL 排序
- Node.js - MySQL 删除数据
- Node.js - MySQL 更新数据
- Node.js - MySQL 连接查询
- Node.js MongoDB
- Node.js - MongoDB 入门
- Node.js - MongoDB 创建数据库
- Node.js - MongoDB 创建集合
- Node.js - MongoDB 插入数据
- Node.js - MongoDB 查找数据
- Node.js - MongoDB 查询
- Node.js - MongoDB 排序
- Node.js - MongoDB 删除数据
- Node.js - MongoDB 更新数据
- Node.js - MongoDB 数据限制
- Node.js - MongoDB 连接查询
- Node.js 模块
- Node.js - 模块
- Node.js - 内置模块
- Node.js - 实用程序模块
- Node.js - Web 模块
- Node.js 有用资源
- Node.js - 快速指南
- Node.js - 有用资源
- Node.js - 讨论
NodeJS v8.deserializer.readHeader() 方法
v8.deserializer 类的NodeJS v8.deserializer.readHeader() 方法用于读取和验证内部缓冲区中的头部。
此方法还确保头部包含有效的序列化格式版本。
如果头部有效,此方法返回 true,否则抛出错误。
语法
以下是NodeJS v8.deserializer.readHeader() 方法的语法:
v8.deserializer.readHeader()
参数
此方法不接受任何参数。
返回值
此方法读取反序列化器中内部缓冲区的头部并进行验证,包括格式版本。如果头部有效,则返回 true。否则抛出错误。
示例
在下面的示例中,我们首先尝试使用 v8.serializer.writeHeader() 方法将头部写入内部缓冲区。然后,我们尝试使用 v8.deserializer.readHeader() 方法读取和验证头部。
// Importing the v8 module const v8 = require('v8'); // Defining the serializer object const serializer = new v8.Serializer(); // Writing the headers to the internal buffer serializer.writeHeader(); // Defining the deserializer object const deserializer = new v8.Deserializer(serializer.releaseBuffer()); // Reading the headers from internal buffer console.log(deserializer.readHeader()); // Printing the header values from internal buffer console.log(serializer.releaseBuffer());
输出
true <Buffer >
示例
在此示例中,我们尝试写入一个 32 位无符号整数而不是头部到内部缓冲区。因此,readHeader() 方法将抛出错误。
// Importing the v8 module const v8 = require('v8'); // Defining the serializer object const serializer = new v8.Serializer(); // Writing a 32-bit unsigned integer to the internal buffer serializer.writeUint32(7869); // Defining the deserializer object const deserializer = new v8.Deserializer(serializer.releaseBuffer()); // Reading the headers from internal buffer console.log(deserializer.readHeader()); // Printing the header values from internal buffer console.log(serializer.releaseBuffer());
错误
以下是上述代码的输出:
/home/cg/root/63b66d48bc404/main.js:14 console.log(deserializer.readHeader()); ^ Error: Unable to deserialize cloned data due to invalid or unsupported version. at Object.<anonymous> (/home/cg/root/63b66d48bc404/main.js:14:26) at Module._compile (internal/modules/cjs/loader.js:702:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10) at Module.load (internal/modules/cjs/loader.js:612:32) at tryModuleLoad (internal/modules/cjs/loader.js:551:12) at Function.Module._load (internal/modules/cjs/loader.js:543:3) at Function.Module.runMain (internal/modules/cjs/loader.js:744:10) at startup (internal/bootstrap/node.js:238:19) at bootstrapNodeJSCore (internal/bootstrap/node.js:572:3)
nodejs_v8_module.htm
广告