Intentando probar mi aplicación en un dispositivo móvil, pero no recibe cookies de las solicitudes del lado del servidor. (funciona como se esperaba en Chrome) cuando getServerSideProps en Next.js llamo:
export async function getServerSideProps({ req }) { const { user } = await supabase.auth.api.getUserByCookie(req) console.log('user from cookie', user) if (!user) { return { props: {}, redirect: { destination: '/sign-in' } } } const { data: teams } = await supabase .from('teams') .select('*') .eq('user_id', user.id) // do something with the user... return { props: { teams, }, } } Esto devuelve un objeto de user cuando ejecuto la aplicación en Chrome o en cualquier otro navegador web; sin embargo, cuando lo intento en mi dispositivo móvil, falla y devuelve user = null.
Supongo que esto es algo relacionado con la sesión de cookies, cualquier consejo sería muy apreciado.
Una vez tuve un problema con las cookies y la supabase y lo solucioné usando mi clave de servicio para el código del lado del servidor.
cree un nuevo cliente en su archivo de cliente supabase y expórtelo.
export const getServiceSupabase = () => createClient( process.env.NEXT_PUBLIC_SUPABASE_URL, process.env.SUPABASE_SERVICE_KEY );luego use este cliente en su getServerSideProps()