2012-04-16 34 views
8

De Facebook Graph Api (https://developers.facebook.com/docs/reference/api/):Facebook API - ¿Qué es "curl-F"?

Editorial: Usted puede publicar en el gráfico de Facebook mediante la emisión de peticiones HTTP POST a las direcciones URL de conexión adecuados, utilizando un acceso token. Por ejemplo, puede publicar una nueva publicación en el muro en el muro de Arjun por emitir una solicitud POST a https://graph.facebook.com/arjun/feed:

curl -F 'access_token=...' \ 
    -F 'message=Hello, Arjun. I like this new API.' \ 
    https://graph.facebook.com/arjun/feed 
  • P1: se trata de un javascript o php?
  • Q2: No veo "curl -F" función de referencia en ninguna parte, ¿alguien puede mostrarme uno?

Muchas gracias ~

+0

LOL que aterrizó aquí cuando confundirse con api fb curl -F también: D –

Respuesta

11

curl (o cURL) es una herramienta de línea de comandos para acceder a las direcciones URL.

Documentación: http://curl.haxx.se/docs/manpage.html

En este ejemplo, son simplemente enviando una solicitud POST a https://graph.facebook.com/arjun/feed. El -F define los parámetros que se enviarán con el POST.

Esto no es javascript o php. Puede usar curl en php, aunque cualquier POST a esa dirección con esos parámetros logrará lo que el ejemplo está demostrando.

Para hacer esto en Javascript, debe crear una forma y luego enviarlo:

var form = document.createElement("form"); 
form.setAttribute("method", "post"); 
form.setAttribute("action", "https://graph.facebook.com/arjun/feed"); 

var tokenField = document.createElement("input"); 
tokenField.setAttribute("type", "hidden"); 
tokenField.setAttribute("name", "access_token"); 
tokenField.setAttribute("value", token); 

var msgField = document.createElement("input"); 
msgField.setAttribute("type", "hidden"); 
msgField.setAttribute("name", "message"); 
msgField.setAttribute("value", "Hello, Arjun. I like this new API."); 

form.appendChild(hiddenField); 

document.body.appendChild(form); 
form.submit(); 

Usando jQuery, es mucho más simple:

$.post("https://graph.facebook.com/arjun/feed", { 
    access_token: token, 
    message: "Hello, Arjun. I like this new API." 
}); 
+2

¡Muchas gracias, mi trabajo casi ha terminado con su ejemplo! –

+0

gracias, pero ¿de qué manera obtengo el token de acceso? si no estoy accediendo a Facebook desde dentro de una aplicación, ¿cómo sabría Facebook para qué aplicación es este token? –

+0

Debe pasar por el proceso de concesión de tokens de inicio de sesión para obtener el token de acceso. https://developers.facebook.com/docs/reference/api/data-access/ –