http - seguro - ¿Cómo debe un cliente pasar un token de acceso de Facebook al servidor?
page access token facebook (1)
Si observa los puntos finales API proporcionados por todos los proveedores populares de OAuth (Google, Facebook, Pocket, Git, etc.), verá que todos tienen puntos finales HTTPS.
Las formas en que puede pasar un token de acceso al proveedor son:
i) Como parámetro de consulta -
https://yourwebsite.com/api/endpoint?access_token=YOUR_ACCESS_TOKEN
ii) En el encabezado de solicitud -
GET /api/users/123/profile HTTP/1.1
Host: yourwebsite.com
Date: Tue, 14 May 2013 12:00:00 GMT
Authorization: <YOUR_ACCESS_TOKEN>
Estos dos enfoques son generalmente compatibles con la mayoría de las API. Puedes pensar en hacer lo mismo.
iii) Pocket API no utiliza GET en absoluto. Usan POST para todas sus solicitudes, incluso para recuperar datos. Verifique este link para ver su documentación. Tenga en cuenta que usan POST para recuperar datos y pasar parámetros JSON.
En cada llamada a mi API REST, requiero que los clientes pasen el token de acceso de Facebook del usuario, que autentica al usuario. ¿Cuál es la mejor práctica para pasar esta ficha?
tal vez como un parámetro detrás del signo de interrogación HTTP
GET /api/users/123/profile?access_token=pq8pgHWX95bLZCML
o de alguna manera en el encabezado de la solicitud, de manera similar a la autenticación HTTP básica
- tal vez una tercera opción? (He excluido pasarlo en un JSON porque quiero que el token también se pase en llamadas
GET
, así que JSON no cabría allí, creo)