2012-03-15 16 views
5

Estoy construyendo una aplicación web que puede abrir a pantalla completa en iPhone y estoy siguiendo el código de Facebook web móvil, que se puede encontrar en: https://developers.facebook.com/docs/guides/mobile/web/Pantalla en blanco con Mobile Web App y Facebook Connect

Cuando intento para iniciar sesión usando la página de inicio de sesión de Facebook, aparece una pantalla blanca en blanco después de hacer clic en el botón "iniciar sesión". Sin embargo, el usuario ha iniciado sesión ... Lo sé porque si cierro y vuelvo a abrir la aplicación web, verifico el estado de inicio de sesión y trato de obtener cierta información del usuario, y funciona bien.

he visto a otros con el mismo aquí: blank white screen after FB login via web app?

Parece que alguien ha identificado una solución, pero no puedo conseguir que funcione. El código que estoy utilizando es:

function loginUser() {  
    FB.login(function(response) { }, {scope:'email'});  
    } 

Otros han indicado que necesito para utilizar la solución aquí:

login({scope:'email', redirect_uri:'where_to_go_when_login_ends'}) 

¿Alguien sabe cómo combinar estas piezas de código para hacer que funcione?

Gracias!

+0

Si está utilizando la aplicación de Facebook en el teléfono para iniciar sesión, intente cerrarla por completo y vuelva a intentar, a veces he visto que se confunde. – peterept

+0

Gracias por la respuesta peterept, eso no parece ser el problema sin embargo. No estoy seguro de qué está pasando con eso. – Brandon

Respuesta

0

Trate this, que trabajó para mí:

FB.login(function(response) { 
    //deal with response 
}, {scope:'permissions', redirect_uri:'url to redirect to'}); 
+1

Creo que esta característica no documentada puede haber sido eliminada por Facebook. Estaba usando esta solución y recientemente dejó de funcionar para mí, dejándome con la pantalla en blanco. Este método alternativo parece funcionar en un iPad1 con iOS5: http://stackoverflow.com/questions/11197668/fb-login-broken-flow-for-ios-webapp – Mike

1

El problema radica en el hecho de que la ventana de acceso normalmente se abre como una ventana emergente. Sin embargo, en aplicaciones web (iOS), esto no se admite correctamente por algún motivo.

Al proporcionar un enlace normal en lugar de la propia escritura de la conexión BTN de FB, el proceso de inicio de sesión se mantenga dentro de la misma ventana (incluyendo el proceso de redirección!)

espero que esto ayude a ...

<a href="https://www.facebook.com/dialog/oauth/?client_id=YOUR_APP_ID&redirect_uri=YOUR_REDIRECT_URL&state=YOUR_STATE_VALUE&scope=COMMA_SEPARATED_LIST_OF_PERMISSION_NAMES">LOGIN!</a> 
Cuestiones relacionadas