2010-09-07 6 views
1

Я разрабатываю уровень API REST для своего приложения, используя Zend_Rest_Controller. У меня есть метод проверки подлинности, когда клиенты передают apikey, и после авторизации ключа я должен создать сеанс (для которого я использую новое Zend_Session_Namespace (< 32-разрядный уникальный ключ сеанса, который я генерирую>)), которые нуждаются в для получения в последующих вызовах API, где клиент передает тот же самый ключ сеанса, который я сгенерировал на предыдущем шаге.Получить сеанс Zend с использованием ключа сеанса

Похоже, что Zend использует переменную PHPSESSID для извлечения объекта сеанса, и поскольку мои клиенты используют, завиток не гарантирует, что в последующих вызовах будет использоваться тот же объект запроса.

В двух словах: я хочу создать 32-битную уникальную строку, а затем использовать ее в качестве ключа для хранения объекта сеанса, а затем использовать этот ключ для восстановления моего объекта сеанса при следующем вызове. И в этом процессе я не хочу, чтобы Zend использовал переменную PHPSESSID.

Любая помощь будет принята с благодарностью!

Приветствия

ответ

2

В документации Zend_Session API перечисляет setId метод:

SETID() - набор идентификатор для указания идентификатора пользователя

  • бросает: Zend_Session_Exception
  • доступ: государственной статической силы SETID (строка $ ID)

  • строка $ ID

+0

, который работал как шарм! Благодаря! – Jugs

+0

В интересах других, Zend_Session :: setId ($ session_id); Zend_Session :: start(); $ session = новое Zend_Session_Namespace («пространство имен»); – Jugs

Смежные вопросы