Los errores pueden ocurrir en diferentes capas. Es posible que recibas notificaciones de diferentes maneras según dónde se produzca el error.
Parámetros de OAuth obligatorios
Si olvidas establecer los parámetros de OAuth obligatorios, como client_id o scope, verás un mensaje de error en la consola de JavaScript de tu navegador.

Cómo corregir errores de configuración de OAuth
Es posible que se requieran cambios en la consola de las APIs de Google para resolver algunos errores.
- Crea un ID de cliente si aún no lo tienes.
- Para la UX de ventanas emergentes, agrega todos los dominios que puedan activar el flujo actual a
Authorized JavaScript origins
. - Para la UX de redireccionamiento, agrega todas las URLs que puedan recibir respuestas de autorización a
Authorized redirect URIs
. - Configura correctamente tu pantalla de consentimiento de OAuth.
- Envía tu app para verificarla si es necesario.
- Es posible que debas realizar pasos adicionales para cumplir con las políticas de OAuth 2.0 de Google.
Valores de parámetros de OAuth no válidos
Si configuras valores no válidos para los parámetros de OAuth, como el ID de cliente, los identificadores de alcance o los valores de tipo de respuesta no válidos, verás la página de error de OAuth.

Respuestas de error de OAuth
OAuth puede devolver una respuesta de error, en cuyo caso se activará tu función callback
con la respuesta de error como parámetro. A continuación, se muestra un ejemplo de respuesta de error de OAuth.
{ "error":"access_denied" }
Por ejemplo:
- El usuario rechaza la solicitud de OAuth.
- Para una solicitud de OAuth con el parámetro
prompt=none
, el usuario aún no se autenticó y no configuró previamente el consentimiento para los permisos solicitados.
En este ejemplo, se muestra cómo controlar las respuestas de OAuth correctas y de error:
function myCallback(response) {
if (response.error) {
// Handle error response
... ...
} else if (response.code) {
// Handle success code response
... ...
}
}
Errores que no son de OAuth
OAuth no define los comportamientos en los siguientes casos:
- No se abre la ventana emergente.
- La ventana emergente se cierra antes de que se devuelva una respuesta de OAuth.
Esta biblioteca captura estos errores y activa error_callback
si se configura. Asegúrate de verificar el tipo de error. De lo contrario, la lógica de tu código podría verse afectada cuando esta biblioteca admita nuevos tipos de errores más adelante.
function myErrorCallback(err) {
if (err.type == 'popup_failed_to_open') {
// The popup window is failed to open
... ...
} else if (err.type == 'popup_closed') {
// The popup window is closed before an OAuth response is returned
... ...
}
}
const client = google.accounts.oauth2.initCodeClient({
client_id: 'YOUR_GOOGLE_CLIENT_ID',
scope: 'https://www.googleapis.com/auth/calendar.readonly',
ux_mode: 'popup',
callback: myCallback,
error_callback: myErrorCallback
});