2012-06-25 24 views
5

¿Hay alguna forma de determinar si un objeto en Open Graph ha sido del agrado?Averiguar si un objeto Open Graph ha sido leído antes

La documentación parece implicar que tengo que publicar una acción similar en mi objeto y esperar un error 3501 cuando se ha gustado antes.

Desde un punto de vista de la interfaz de usuario esto no tiene sentido, quiero cambiar mi botón de me gusta a un estado "diferente" sin tener que dar me gusta a mi objeto y ver si falla o no.

Gracias!

Respuesta

2

Si está buscando específicamente para gustos en un Open Graph Object (como en el blanco de un Open Graph Action), y que está hablando incorporado en (og.likes) Me gusta, la respuesta de Shawn es correcta, pero debes buscar en una tabla FQL diferente.

Un gráfico abierto Object es solo una URL que se resuelve en una página que tiene og:type meta en el encabezado. Facebook trata estos objetos como link (se puede comprobar esto con SELECT type FROM object_url where url='http://url.to/your/object')

puede encontrar información interesante en las tablas FQL link y link_stat, pero lo que estás buscando es la tabla de unión, donde Facebook se relaciona usuario le gusta enlaces: la tabla url_likes.

lo tanto, para saber si el usuario actual ha gustado un determinado Open Graph Object, tendrá que utilizar:

SELECT user_id FROM url_like WHERE user_id=me() AND url='http://url.to/your/object' 

Si se obtiene un valor de nuevo, el usuario actual ya ha gustado. Si obtienes una matriz vacía, al usuario actual no le ha gustado.

Que yo sepa, no hay forma de hacer esto con Graph API, solo FQL. Aunque me gustaría que se demuestre que estoy equivocado.

1

Dependiendo del objeto, si el objeto tiene una conexión similar, puede utilizar la API del gráfico para determinar si el usuario actual le ha gustado.

uso fql en un fasion similar para comprobar si a un usuario le gusta una publicación.

/fql?q=SELECT+user_id+FROM+like+WHERE+post_id=\''.$postid.'\'+AND+user_id=me() 

refiere al poste/como https://developers.facebook.com/docs/reference/api/page/

Cuestiones relacionadas