Question

Je suis en train d'obtenir de l'autorisation pour « utilisateurs offline_access » dans une application Facebook iFrame code avec l'API Facebook Java. Je comprends que je dois obtenir une « clé de session indéfinie » après que les utilisateurs approuve ma demande. À l'heure actuelle, je peux accomplir ce que je veux, mais d'une manière très maladroite qui est probablement pas correct. Il doit y avoir une meilleure façon de le faire. Toutes les pensées / idées seraient appréciées !!

Qu'est-ce que je l'ai fait

Dans un servlet de mon application, je vérifie pour voir si l'utilisateur a l'autorisation « de offline_access ». Si oui, je reçois l'url par Permission.authorizeUrl(Permission.OFFLINE_ACCESS). Je demande alors response.redirect pour accéder à la page des autorisations. Deux problèmes que je vais avoir sont:

  1. La page d'autorisations redirigée est affiché dans le iFrame. Par conséquent, la barre de menu d'accueil du livre Facebook etc sont affichés deux fois. à-dire ressemblant à une application est incorporée dans une autre application.
  2. L'utilisateur sera « bloqué » sur la page d'autorisation une fois redirigé là. Je ne serai pas en mesure d'obtenir la « clé de session indéfinie » (en appelant client.getCacheSessionKey) à moins que l'utilisateur retourne à une page dans mon application manuellement.

contournements possibles ??

  • Est-il possible d'ouvrir / rediriger vers la page des autorisations dans une nouvelle fenêtre? De cette façon, je peux peut-être avoir un fil dans mon servlet pour continuer à vérifier si l'autorisation est définie après la redirection. Et puis je peux obtenir la « clé de session indéfinie » une fois que je l'ai et le stocker quelque part?
  • Est-il possible de définir une URL Facebook pour aller après l'autorisation est définie? (Un peu comme les paramètres d'URL pré-auth et post-auth?) Ou prendre le contrôle d'une certaine manière après la page d'autorisation est frappé?
  • Toute autre façon de configurer mon application peut-être ?? Être un débutant, je pourrais ai eu l'idée tout à fait tort ...
Était-ce utile?

La solution

Avez-vous essayé d'utiliser la balise fb:promot-permission < a href = "http://wiki.developers.facebook.com/index.php/XFBML" rel = "nofollow noreferrer"> XFBML ? Cela semble la manière la plus simple d'obtenir l'autorisation accordée, et XFBML est assez facile à mettre en place.

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