2010-09-07 3 views
1

Je développe une couche d'API REST pour mon application à l'aide de Zend_Rest_Controller. J'ai une méthode d'authentification où les clients passeront l'apikey et après que la clé soit autorisée je dois créer une session (pour laquelle j'utilise la nouvelle Zend_Session_Namespace (< 32 bits clé de session unique que je génère>)) qui ont besoin être récupéré dans les prochains appels API où le client passera la même clé de session que j'ai générée à l'étape précédente.Obtenir la session Zend à l'aide de la clé de session

Il semble que Zend utilise la variable PHPSESSID pour récupérer l'objet de session et puisque mes clients utilisent, curl il n'y a aucune garantie que le même objet de demande sera utilisé dans les appels suivants. En un mot - Je veux générer une chaîne unique de 32 bits, puis l'utiliser comme une clé pour stocker l'objet de session et ensuite utiliser cette clé pour restaurer mon objet de session lors de l'appel suivant. Et dans le processus, je ne veux pas que Zend utilise la variable PHPSESSID.

Toute aide sera grandement appréciée!

Vive

Répondre

2

La documentation Zend_Session API énumère une méthode setId:

setId() - ensemble un identifiant d'un identifiant utilisateur spécifié

  • Génère: Zend_Session_Exception
  • accès: public static void setId (string $ id)

  • string $ id

+0

Cela a fonctionné comme un charme! Merci! – Jugs

+0

Pour le bénéfice des autres, Zend_Session :: setId ($ session_id); Zend_Session :: start(); $ session = new Zend_Session_Namespace ("Espace de nommage"); – Jugs

Questions connexes