2012-03-14 22 views
5

He estado tratando de obtener Google's Calendar API trabajando en una aplicación web PHP, pero me está resultando difícil autenticarme.Autenticación de la API de Google para el servidor

Lo que quiero hacer es permitir a los usuarios interactuar con los calendarios de una sola cuenta conocida por el servidor.

Cada tipo de escenario cubierto en el OAuth 2.0 docs habla del "consentimiento del usuario" que implica un formulario de inicio de sesión y el usuario individual que inicia sesión, pero quiero que el servidor se autentique directamente y obtenga un token de acceso para sí mismo.

¿Hay alguna parte de OAuth o algún mecanismo alternativo que pueda utilizar para hacer esto?

Respuesta

3

Para hacer esto, debe seguir los pasos para el consentimiento del usuario y luego copiar los tokens de acceso que le da en el código PHP.

El procedimiento habitual para OAuth es así:

  1. Enviar el usuario a la página de autenticación.
  2. usuario vuelve con $ _GET [ 'código']
  3. Enviar $ _GET [ 'código'] al servidor de OAuth para un símbolo símbolo
  4. tienda en la base de datos para el usuario (o sesión, si es muy corta duración)

Pero al hacerlo con un solo calendario como este, modificas el paso 4. En cambio, vuelcas el token a la pantalla y lo copias en tu archivo PHP como variables, en lugar de ponerlo en la base de datos. Luego, cuando vaya a pasar el token de acceso al servidor, solo pase el token conocido, estático en lugar de un token dinámico de la base de datos/sesión.

+0

Gracias, pero ¿no es el token de acceso de corta duración? Tendría que hacer esto manualmente todo el tiempo. – andy

+0

He estado usando este método exacto para un calendario desde diciembre sin problemas, y los eventos en este calendario se actualizan con tanta frecuencia que sé que todavía está funcionando. Creo que los tokens de acceso tienen una vida, pero se miden en meses, no en días u horas. – kingcoyote

+0

Bien, gracias, lo intentaré. – andy

Cuestiones relacionadas