template publicar plantillas medidas instantaneas instantanea formatos experiencias experiencia como facebook facebook-graph-api facebook-javascript-sdk facebook-canvas

publicar - ¿Qué puede hacer una aplicación de Canvas que un sitio externo que usa el SDK de Facebook no puede?



medidas canvas facebook 2018 (2)

He leído la documentación de Facebook para las aplicaciones de Canvas varias veces, pero me está costando decir qué características están disponibles solo para las aplicaciones de Canvas y qué características también están disponibles para los sitios web que no son de Facebook y que usan JavaScript SDK.

Por ejemplo, la documentación de Canvas menciona Marcadores, Búsqueda y publicación en el News Feed a través del cuadro de diálogo Feed y Graph API. Pero puede obtener todo eso en un sitio web que no sea de Facebook, sin ser una aplicación de Canvas, mediante el API de inicio de sesión de Facebook y la API de diálogo de feed.

Entonces, ¿cuáles son exactamente las características de Canvas? ¿Qué puede hacer una aplicación Canvas que un sitio web ordinario no puede?


Esa no es la única ventaja. Aquí hay un mensaje directo de la API FB Graph (v2.10)

{ "error": { "message": "(#200) Only web canvas apps can send app notifications", "type": "OAuthException", "code": 200, "fbtrace_id": "EkUFajtj0Iq" } }


La diferencia obvia es que una aplicación de Canvas vive en una página de Facebook, mientras que una aplicación externa vive en su propio sitio.

La diferencia más sorprendente tiene que ver con las políticas de plataforma de Facebook, ya que se aplican a las aplicaciones que se definen como "juegos".

En particular, hay una regla que se aplica solo a juegos en sitios web externos de Facebook, según 9.2.a:

Los juegos web de escritorio que están fuera de Facebook.com solo pueden usar el inicio de sesión de Facebook ( Autenticación , excluyendo las conexiones de los usuarios, como la lista de amigos), los Complementos sociales y la publicación (por ej., Diálogo de feed, Publicación de flujo u Open Graph). Al autenticarse, estos juegos no pueden solicitar permisos adicionales que no sean la edad, el correo electrónico y nuestros Permisos de publicación.

Si eres un sitio externo que usa el SDK de Facebook, puedes hacer todo lo anterior y más, pero si tu sitio externo es un juego, infringirás los términos de Facebook si tratas de solicitar permisos adicionales, lee los archivos de los jugadores. listas de amigos, o usa API adicionales de Facebook.

Si su aplicación es un juego y desea tener acceso completo a la API de Facebook, debe convertir su sitio externo en una aplicación de Canvas, y luego debe seguir otras reglas de Facebook (especialmente notable: debe aceptar Créditos de Facebook exclusivamente, que le da a Facebook una reducción del 30% de sus ingresos en la aplicación).

Si usted no es una aplicación de juegos, el único beneficio de ser una aplicación de Canvas es la URL de facebook.com.

(Usted mismo es responsable de decirle a Facebook si usted es un juego o no, es posible mentir a Facebook configurando su juego para usar una categoría de aplicación que no sea de juego. Pero si su juego se vuelve lo suficientemente popular, Facebook lo notará y penalizará por violar sus términos, así que no hagas eso).