Node.js – Redis 中的detect_buffers 属性
Node.jsRedis提供了可以根据您的用例使用的某些属性。一种这样的属性是detect_buffers。
如果此属性设置为True,则发送到回调的回复将作为缓冲区发送。
此选项允许您基于此单个命令在缓冲区和字符串之间切换。
此属性不适用于pub-submode。
语法
detectBuffers: true
示例1
创建一个名为“detectBuffers.js”的文件并复制以下代码。创建文件后,使用命令“nodedetectBuffers.js”运行此代码,如下例所示:
//detect_buffers属性演示示例 //导入redis模块 const redis = require("redis"); //使用设置为true的detect_buffers属性创建redis客户端 const client = redis.createClient({ detect_buffers: true }); //设置键值对 client.set("foo_rand000000000000", "OK"); //根据缓冲区键检索值 client.get("foo_rand000000000000", function(err, reply) { console.log(reply.toString()); }); //由于原始密钥被指定为缓冲区,因此将返回缓冲区 client.get(new Buffer("foo_rand000000000000"), function(err, reply) { console.log(reply); });输出结果
它将产生以下输出-
OK <Buffer 4f 4b>
示例2
让我们再举一个例子
//detect_buffers属性演示示例 //导入redis模块 const redis = require("redis"); //使用设置为true的detect_buffers属性创建redis客户端 const client = redis.createClient({ detect_buffers: true }); //设置键值对 client.set("Hello", "nhooo"); //缓冲区将被返回 client.get(new Buffer("Hello"), function(err, reply) { console.log(reply); });输出结果
<Buffer 54 75 74 6f 72 69 61 6c 73 50 6f 69 6e 74>