2012-03-06 13 views
5

Actualmente utilizamos el cuadro de diálogo OAuth a través del JavaScript SDK en nuestra aplicación de pestaña de página para solicitar permisos, en lugar de FB.login .FB.ui ({method: "oauth"}) vs FB.login() dentro de una aplicación de pestaña de página

La razón de esto es que FB.login() inicia una nueva ventana, mientras que FB.ui ({method: 'oauth'}) muestra un diálogo modal atractivo. Consideramos que el diálogo de OAuth es una experiencia mucho más amigable para nuestros usuarios.

Sin embargo, la documentación para el método OAuth dice no utilizarlo directamente en el SDK de JavaScript: http://developers.facebook.com/docs/reference/dialogs/oauth/ "El diálogo de OAuth no deberían ser llamados directamente desde el SDK de JavaScript Por el contrario, el uso FB.login para este propósito.. "

¿Existe alguna manera "aceptada" de solicitar permisos de la aplicación desde una aplicación de pestaña de página a través de un diálogo modal en lugar de a través de una ventana emergente?

Respuesta

0

Por el momento de esta respuesta, Facebook no permite que se soliciten permisos de usuario en un marco porque establece 'X-Frame-Options' en 'DENY'. Lo cual tiene sentido ya que podría ser usado por XSS.

llamadas a cualquiera FB.ui o FB.login con display: "iframe" devuelve el mismo error:

FB.ui({method: "oauth", display: "iframe"});

FB.login(function(response){}, {display: "iframe"});

negó a mostrar 'https://www.facebook.com/dialog/oauth?app_id=XXXX&channel=XXXX&sdk=joey' en un marco, ya que establece 'X-Frame-Options' denegar'.

Cuestiones relacionadas