Jaems
Jaems
NNuxt
Created by Jaems on 1/5/2025 in #❓・help
Nuxt + Laravel Sanctum Socialite
Hello, im currently having a problem on socialite callback, i can login on the backend using Auth::login(), after loging in im redirecting it to the frontend, but still im not logged in on the front end, logging in using email password is working fine. im using https://manchenkoff.gitbook.io/nuxt-auth-sanctum This is the route for laravel Route::get('/auth/{provider}/redirect', function ($provider) { return Socialite::driver($provider)->stateless()->redirect(); }); Route::get('/auth/{provider}/callback', function ($provider, Request $request) { $socialUser = Socialite::driver($provider)->stateless()->user(); $user = User::firstOrCreate( [$provider . '_id' => $socialUser->getId()], [ 'name' => $socialUser->getName(), 'email' => $socialUser->getEmail(), ] ); // Log in the user Auth::login($user, true); $token = $user->createToken('api-token')->plainTextToken; return redirect()->away( config('app.frontend_url') . '/auth/callback?' . http_build_query([ 'token' => $token, 'user' => json_encode($user) ]) ); }); this is the callback page on frontend <script setup lang="ts"> import { useRouter, useRoute } from 'vue-router'; const sanctumConfig = useSanctumConfig() const sanctumFetch = useSanctumClient() const { login,refreshIdentity } = useSanctumAuth() const router = useRouter(); definePageMeta({ layout: 'minimal', middleware: ['sanctum:guest'], }); onMounted(async () => { const urlParams = new URLSearchParams(window.location.search); const token = urlParams.get('token'); const userlogged = urlParams.get('user'); console.log(userlogged); console.log(token); const response = await refreshIdentity() console.log(response); navigateTo(sanctumConfig.redirect.onGuestOnly || '/') }); </script> <template> loading </template>
5 replies