2012-04-17 30 views
11

necesito ampliar mi token de acceso facebook, llamaré a esto:página de Facebook Token de acceso

https://graph.facebook.com/oauth/access_token? 
client_id={MY PAGE ID}& 
client_secret={THE SECRET KEY OF MY APP}& 
grant_type=fb_exchange_token& 
fb_exchange_token={AN ACCESS TOKEN FOR MY PAGE} 

y estoy recibiendo este error:

"error": { 
     "message": "Error validating application. Cannot get application info due to a system error.", 
     "type": "OAuthException", 
     "code": 101 
    } 

que he visto una mucho problema con eso señal_acceso, pero ninguna respuesta relativa a las páginas, idk por qué el uso de Facebook API que por qué ... pero es cierto ...

Gracias,

+0

¿Ha resuelto que? –

+0

También espero que alguien del equipo de desarrolladores de Facebook pueda proporcionar la solución adecuada porque ahora enfrentamos el mismo problema. –

Respuesta

21

Para obtener un acceso de larga vida de emergencia es necesario seguir estos pasos:

  1. Crear una aplicación
  2. Crear una página (su cuenta necesidad de ser "administrador" de la página)
  3. asociar la aplicación a la página (de la misma manera que lo hace cuando se quiere agregar una etiqueta a una página)

    http://facebook.com/add.php?api_key=*YOUR_APP_ID*&pages=1&page=*YOUR_PAGE_ID* 
    
  4. Obtenga un token de acceso efímero con el permiso "manage_pages" asociado a su Aplicación.

    https://graph.facebook.com/oauth/authorize?client_id=__APP_ID__&scope=manage_pages&redirect_uri=http://www.facebook.com/connect/login_success.html 
    then 
    https://graph.facebook.com/oauth/access_token?client_id=__APP_ID__&redirect_uri=http://www.facebook.com/connect/login_success.html&client_secret=__APP_SECRET__&code=__CODE_FROM_PREVIOUS_REQUEST__ 
    
  5. Usando el gráfico API Explorer con la solicitud /me/accounts se puede ver los tokens de acceso para cada página que usted es administrador. El problema es que esos token de acceso son efímeros.

  6. convertir su token de acceso de corta duración a un (token de acceso se extiende) de larga duración:

    https://graph.facebook.com/oauth/access_token?client_id=_APP_ID_&client_secret=_APP_SECRET_&grant_type=fb_exchange_token&fb_exchange_token=_ACCESS_TOKEN_ON_STEP_4_ 
    
  7. Ahora puede probar su nuevo token de acceso con el Access Token Debugger.

+0

pregunta: Mi aplicación no es 'aplicación de pestaña' ¿cómo la asocio? – siniradam

+1

@siniradam Utilice esta URL: http://facebook.com/add.php?api_key=*YOUR_APP_ID*&pages=1&page=*YOUR_PAGE_ID* – FR6

+0

Gracias por eso. BTW Ayer descubrí que si envío una solicitud a/me/accounts con un token a largo plazo, la lista se devuelve con los tokens de largo plazo. He probado con esto: https://developers.facebook.com/tools/debug/access_token?q= – siniradam

2

Scenario 5: Page Access Tokens

When a user grants an app the manage_pages permission, the app is able to obtain page access tokens for pages that the user administers by querying the [User ID]/accounts Graph API endpoint. With the migration enabled, when using a short-lived user access token to query this endpoint, the page access tokens obtained are short-lived as well.

Exchange the short-lived user access token for a long-lived access token using the endpoint and steps explained earlier. By using a long-lived user access token, querying the [User ID]/accounts endpoint will now provide page access tokens that do not expire for pages that a user manages. This will also apply when querying with a non-expiring user access token obtained through the deprecated offline_access permission.

https://developers.facebook.com/roadmap/offline-access-removal/

Cuestiones relacionadas