Question

Je vais avoir beaucoup de difficulté à obtenir le travail de la fonction « attach () » de strophes.

Je travaille sur un réseau social où les utilisateurs seront des pages de surf et en même temps garder leur connexion de chat sur. Je ne veux pas de se reconnecter / autoriser à nouveau sur chaque page afin que par ce lien, http://groups.google.com/group/strophe/browse_thread/thread/430da5e788278f3a/93c48c88164f382f?show_docid=93c48c88164f382f&fwc=1 , je stocke le SID et du RID dans un cookie onunload.

Sur la page suivante lorsque je tente d'utiliser le nouveau SID et le RID (après l'incrémenter par 1) ma session est déjà détruite. rapports ejabberd "Erreur sur HTTP put Motif:. bad_key"

WTF se passe?

Était-ce utile?

La solution 2

J'ai réussi à résoudre le problème.

Le débarrasser était en cours à double incrémentée entre les charges de page. En incrémenter une seule fois la session attach a commencé à travailler.

Je ne sais pas pourquoi la session a été annulé, mais voici ce qui est arrivé:

  1. Parce que le RID est plus 2 que les précédentes, ejabberd stocke la demande dans un tampon et ne transmet pas aux clients
  2. Les 2 prochaines demandes également obtenir stockées
  3. L'un après qui provoque ejabberd d'annuler la session

Les indices?

Autres conseils

Sans plus d'informations d'enregistrement de ejabberd ou Firebug, ce sera difficile à diagnostiquer. Est-ce le bon RID effectivement stocké dans le cookie? Que pense ejabberd est la dernière strophe que vous avez envoyé, et quelle valeur RID-t-il? Quelle est la première strophe et la première valeur RID sur la nouvelle page? Combien de temps entre ces deux strophes?

Mise à jour: La raison pour laquelle la session est annulée est due au modèle de sécurité de BOSH. En effet, le SID et la paire RID sont secrètes. Si vous connaissez la paire, vous pouvez joindre à la session. Afin de garder la forme des gens pouvoir deviner, le RID est choisi au hasard à partir d'un très grand espace. Si vous envoyez un RID en dehors d'une petite fenêtre à partir du courant RID, il déconnecte la session. La fenêtre est habituellement (RID, RID + 5) ou plus.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top