Recientemente, he comenzado a usar http://code.google.com/p/google-api-php-client/ (Google OAuth2) para mi aplicación web. Sin embargo, hago un espacio en blanco porque no puedo leer la zona horaria de mi usuario. Intenté ingresar de alguna manera en la página de mi cuenta de Google, pero no encontré ningún campo. ¿Alguien sabe si Google realmente ofrece esa información y, de ser así, cómo puedo configurarla en mi cuenta, por ejemplo?Google auth2 API ¿falta información sobre la zona horaria?
Respuesta
Lo más parecido a usted es la zona horaria disponible en su calendario de Google. Compruebe la pestaña 'General' en la página de configuración de su calendario: https://www.google.com/calendar
Ahora puede solicitar el acceso al calendario del usuario mientras los autentica en su servicio. Use el alcance "https://www.googleapis.com/auth/calendar" (docs)
Cuando está autenticado, puede request the calendar you're interested in. Supongo que el calendario principal del usuario es su mejor apuesta.
Finalmente, cada calendario tiene configuraciones con timeZone property.
Como 21 de marzo de 2013 Google no proporciona esta información en su respuesta al punto final userinfo.profile - a pesar de que afirman que lo hacen.
Esta documentación afirma que la zona horaria está disponible: https://developers.google.com/accounts/docs/OAuth2Login?hl=en#userinfocall
Sin embargo, la implementación actual sólo devuelve los siguientes datos:
- Identificación
- correo electrónico
- verified_email
- nombre
- given_name
- FAMILY_NAME
- enlace (a G + perfil, si está disponible)
- género
- cumpleaños
- local
- HD (parece ser el dominio de Google Apps, si es relevante)
Tenga en cuenta que "cumpleaños" y "hd" no figuran en la documentación actual en la página mencionada anteriormente. Estoy verificando estos campos de las respuestas del mundo real que estoy recibiendo desde el punto final.
El mejor enfoque para obtener la zona horaria en este momento es probablemente utilizar JavaScript (para recuperar la zona horaria del navegador del usuario). Esta respuesta StackOverflow explica cómo hacerlo:
Getting the client's timezone in JavaScript
Desafortunadamente, esto tendría que ocurrir como una acción secundaria, lo que significa que tendría que agregar estos datos a su base de datos por separado de los datos recuperados desde el punto final . Un truco a tener en cuenta es capturar el desplazamiento de la zona horaria en la página donde inicia la solicitud de punto final y luego agregar el valor de compensación de la zona horaria al valor de "estado" en su solicitud de OAuth.Este valor se devolverá en la devolución de llamada, y puede extraerlo y agregarlo a la información del otro perfil que se devolvió durante el mismo procedimiento en el que escribe en su base de datos.
- 1. Geocodificación con información de zona horaria
- 2. ajustar la zona horaria
- 3. Obtener información de zona horaria del sistema en Python?
- 4. Obtener información de zona horaria en VBA (Excel)
- 5. ¿Existe un repositorio central para información de zona horaria?
- 6. Posición del GPS en la zona horaria
- 7. Google iOS API Auth2 Pantalla de inicio de sesión en blanco
- 8. zona horaria por Coordinar
- 9. postgres zona horaria predeterminada
- 10. obtener usuario zona horaria
- 11. java incorrecta zona horaria
- 12. Python Zona horaria conversión
- 13. Java GregorianCalendar Zona horaria
- 14. API de Magento devuelve las fechas en qué zona horaria
- 15. Cómo ignorar la zona horaria del usuario y forzar la fecha() utiliza la zona horaria específica
- 16. Django: problema de zona horaria
- 17. HttpCookie.Expire las implicaciones de la zona horaria?
- 18. Cambiar la zona horaria en MSYS
- 19. Java: zona horaria por la que la zona horaria diferente da el mismo valor en milisec
- 20. Obtener zona horaria a partir de DateTime
- 21. Rails 3: Ajuste de la zona horaria a los usuarios actuales de zona horaria
- 22. cómo detectar la zona horaria del cliente?
- 23. DateTime.ParseExact, haga caso de la zona horaria
- 24. cómo cambio la zona horaria usando adb
- 25. Cómo configurar correctamente la zona horaria mysql
- 26. Cambios en la zona horaria rusa
- 27. ¿Cómo obtener la zona horaria del cliente?
- 28. ¿Cómo cambio la zona horaria en CakePHP?
- 29. ¿NSDate en CoreData encapsula la zona horaria?
- 30. Rieles: obtenga #beginning_of_day en la zona horaria
+1 Niza inyección de servicio – mate64