msgpack / messagepack не сериализует php

Я пытаюсь получить доступ к переменным сеанса, установленным через php, хранящимся в http://memcached.org/ от узла.

Мне бы очень хотелось, чтобы формат хранимых данных сеанса был в формате 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 ответ

Решение

Пакет сообщений не JSON, поэтому использование JSON.parse данные Messagepack не будут работать.

Вы должны использовать этот модуль Node, который позволяет анализировать объекты Messagepack в Node.

Пример использования:

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

var unpacked = msgpack.unpack(packed); // unpack the "packed" variable
Другие вопросы по тегам