msgpack / messagepack没有序列化php

时间:2014-03-23 00:07:15

标签: php node.js session msgpack messagepack

我试图从节点访问存储在 memcached 中的php设置的会话变量。

我真的希望存储的会话数据的格式为JSON。

我找到了 msgpack ,看起来它可能会完成这项工作,但是,节点内的会话数据的console.log显示项目是分开的吗?标志:

���user_id�1�company_id�1�fname�name�lname�lname�lactivity�S.7��login_st....等等

我的php文件

//以一个漂亮的JSON格式序列化

ini_set('session.serialize_handler', 'msgpack');

//使用MEMCACHED保存会话

ini_set('session.save_handler', 'memcached');

//端口memcached正在

上运行
ini_set('session.save_path', 'localhost:11211');

我正在尝试从节点访问php会​​话,我使用JSON.parse,但它总是会收到无效的字符错误。

如果有人有任何想法,我将非常感激!

捐赠

1 个答案:

答案 0 :(得分:1)

Messagepack 不是 JSON,因此在Messagepack的数据上使用JSON.parse将无效。

您应该使用此Node module,它允许在Node中解析Messagepack的对象。

使用示例:

var msgpack = require('msgpack'); // import the node-msgpack module

var unpacked = msgpack.unpack(packed); // unpack the "packed" variable