Facebook API sin autenticación de cliente para contenido público

votos
12

Estoy desarrollando un sitio para un cliente que ya tiene las fotos de sus productos en Facebook, y quiere que los mismos álbumes se repliquen en su sitio. Ya estaba usando Facebook Connect, así que solté una combinación de photos.getAlbumsy photos.getpara hacer dinámicamente las galerías.

Hasta ahora todo bien, pero luego me di cuenta de que si no hay ningún usuario conectado a través de FBC, no se crea ninguna sesión y la API se vuelve inutilizable, incluso para el contenido que está disponible públicamente. Obviamente quiero mostrar los álbumes a todos y no solo a las personas que conectan sus cuentas.

¿Es así como funcionan todas las funciones en la API de Facebook? ¿Cuál es la mejor solución (más fácil de implementar) para esta situación?

Publicado el 16/06/2009 a las 11:58
fuente por usuario
En otros idiomas...                            


3 respuestas

votos
0

Eso no tiene sentido para mí: tengo una aplicación (relativamente simple) que se presenta en Facebook, incluso si el usuario nunca ha iniciado sesión en Facebook antes (en cuyo caso muestra datos de demostración).

Cuando uso la biblioteca PHP de Facebook, solo hago esto:

$ facebook = new Facebook ($ api_key, $ secret);

No se requiere una identificación de sesión, pero, obviamente, las funciones api que dependen de la información sobre el usuario no funcionarán.

También puede buscar en una "sesión infinita" para su aplicación: puede crear una clave de sesión infinita para usted y usar esa sesión para acceder a la API.

Respondida el 18/06/2009 a las 16:47
fuente por usuario

votos
3

Para el registro, logré resolver esta situación desarrollando un pequeño backend que requiere que el cliente inicie sesión en Facebook una vez y otorgue offline_access permisos extendidos a la aplicación FB, así puedo guardar su clave de sesión y usarla para autenticar el cliente API de Facebook cada tiempo que necesito usar FQL para obtener contenido no público.

Uno podría obviamente agregar algo de almacenamiento en caché en el medio para evitar solicitudes innecesarias a Facebook, pero ha estado funcionando bien durante meses sin llegar a ningún límite que yo sepa.

Respondida el 17/10/2009 a las 18:39
fuente por usuario

votos
11

En septiembre de 2010, ahora se puede autenticar al igual que una aplicación, sin usuario asociado. Ver http://developers.facebook.com/docs/authentication/ para más detalles. O puede ejecutar este código de ejemplo para obtener un token de acceso:

curl -F grant_type=client_credentials \
 -F client_id=your_app_id \
 -F client_secret=your_app_secret \
 https://graph.facebook.com/oauth/access_token
Respondida el 21/09/2010 a las 02:54
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more