📌 Supabase – Authentication ve Kullanıcı Yönetimi

Supabase, oturum yönetimi, kimlik doğrulama ve kullanıcı yetkilendirme işlemlerini basitleştiren bir BaaS çözümüdür. Aşağıda temel kavramlar, React ile kullanım ve gelişmiş pratikler bir arada anlatılmıştır.


1. Oturum ve Kullanıcı Verisi

getSession() – Mevcut Oturumu Almak

const { data, error } = await supabase.auth.getSession();

getUser() – Doğrulanmış Kullanıcı Verisi

const { data: { user } } = await supabase.auth.getUser();

2. React Hook’ları ile Kullanıcı Yönetimi

useUser – Kullanıcı Bilgilerini Çekmek

import { useQuery } from "@tanstack/react-query";
import { getCurrentUser } from "../../services/apiAuth";

export function useUser() {
  const { isPending, data: user, fetchStatus } = useQuery({
    queryKey: ["user"],
    queryFn: getCurrentUser,
  });

  return {
    isPending,
    isAuthenticated: user?.role === "authenticated",
    fetchStatus,
  };
}