Iniciar sesión con Supabase en Apple en Web
Copiar un prompt de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
Requisitos previos
Sección titulada “Requisitos previos”Esta guía te ayudará a integrar el inicio de sesión de Apple con la autenticación de Supabase en Web. Se asume que ya has completado:
- el Configuración de inicio de sesión de Apple para Web
- el Supabase Apple Login - Configuración General.
Implementación
Sección titulada “Implementación”La implementación completa está disponible en el archivo del ejemplo de aplicación. Este manual explica los conceptos clave y cómo utilizarlo. supabaseAuthUtils.ts Usando el Asistente de Autenticación
Sección titulada “Usando el Asistente de Autenticación”
Lafunción maneja todo el flujo de autenticación: authenticateWithAppleSupabase Copiar a portapapeles
import { authenticateWithAppleSupabase } from './supabaseAuthUtils';
const result = await authenticateWithAppleSupabase();if (result.success) { console.log('Signed in:', result.user); // Navigate to your authenticated area} else { console.error('Error:', result.error);}Cómo Funciona
Sección titulada “Cómo Funciona”En Web, Apple Sign-In utiliza un flujo de OAuth popup:
- Iniciación: El plugin se inicia con su ID de Servicio y la URL actual de la página como URL de redirección
- OAuth Popup: Se abre una ventana emergente con la página de OAuth de Apple
- Autenticación de Usuario: El usuario se autentica con Apple en la ventana emergente
- Token de Identidad: Apple devuelve un token de identidad (JWT) que contiene información del usuario
- Autenticación de Supabase: El token de identidad se envía a Supabase
signInWithIdToken()
La función de ayuda detecta automáticamente la plataforma web y configura todo correctamente.
Notas importantes
Sección titulada “Notas importantes”Configuración del ID de Servicio
Sección titulada “Configuración del ID de Servicio”- La web requiere su ID de Servicio de Apple (igual que Android)
- El ID de Servicio debe estar configurado en el Portal de Desarrolladores de Apple con las URL de devolución correctas
- Asegúrese de que su dominio esté agregado a los dominios permitidos en el Portal de Desarrolladores de Apple
URL de redirección
Sección titulada “URL de redirección”- En la web, la URL de redirección se establece automáticamente en
window.location.href(URL de la página actual) - Debe coincidir con uno de los URLs de retorno configurados en el Portal de Desarrolladores de Apple
- Asegúrese de que tanto la URL con como sin barra de dirección estén configuradas en el Portal de Desarrolladores de Apple
ID del cliente de Supabase
Sección titulada “ID del cliente de Supabase”En Supabase, configure su proveedor de Apple con:
- ID del cliente: Su ID de Servicio de Apple (por ejemplo,
com.example.app.service)
Si también está utilizando iOS, necesitará proporcionar tanto el ID de la aplicación como el ID de Servicio en el campo ID del cliente de Supabase (separados por comas).
Actualizar la función de ayuda
Sección titulada “Actualizar la función de ayuda”Al utilizar la authenticateWithAppleSupabase función de ayuda, usted debe actualizar actualizar clientId para coincidir con su ID de Servicio de Apple:
await SocialLogin.initialize({ apple: { clientId: isIOS ? undefined // iOS uses bundle ID automatically : 'your.service.id.here', // Your Apple Service ID for Web and Android redirectUrl: redirectUrl, },});Solución de problemas
Sección titulada “Solución de problemas”Si falla la autenticación:
- Diferencia en el ID de Servicio: Verifique que su ID de Servicio coincida en ambos Portal de Desarrolladores de Apple y su code
- URL de retorno no configurada: Asegúrese de que la URL actual de la página (con y sin barra de dirección) esté configurada en el Portal de Desarrolladores de Apple
- Ventana emergente bloqueada: Revisa las configuraciones del navegador - algunos navegadores bloquean ventanas emergentes por defecto
- Dominio no permitido: Verifique que su dominio esté agregado a los dominios permitidos en el Portal de Desarrolladores de Apple
- Configuración de Supabase: Verifique que su ID de Servicio esté configurado correctamente en los ajustes de proveedor de Apple de Supabase
- Revisar el ejemplo de aplicación code para referencia