Use cookie to redirect to last route after oauth

This commit is contained in:
2023-12-10 23:04:26 +01:00
parent 7fe980e478
commit d72d89e10a
3 changed files with 10 additions and 5 deletions

View File

@@ -1,6 +1,11 @@
<script setup lang="ts"> <script setup lang="ts">
const appConfig = useAppConfig() const appConfig = useAppConfig()
const getColor = computed(() => appConfig.ui.primary) const getColor = computed(() => appConfig.ui.primary)
const router = useRouter()
router.afterEach((route) => {
useCookie('last-route', { path: '/', default: () => '/' }).value = route.fullPath
})
</script> </script>
<template> <template>

View File

@@ -10,7 +10,7 @@ export default oauth.githubEventHandler({
username: String(user.name).trim(), username: String(user.name).trim(),
}, },
}) })
return sendRedirect(event, '/') return sendRedirect(event, getCookie(event, 'last-route') || '/')
}, },
onError(error: any) { onError(error: any) {
console.error('GitHub OAuth error:', error) console.error('GitHub OAuth error:', error)

View File

@@ -1,7 +1,4 @@
export default oauth.googleEventHandler({ export default oauth.googleEventHandler({
config: {
redirectUrl: '/talents',
},
async onSuccess(event: any, { user }: any) { async onSuccess(event: any, { user }: any) {
await setUserSession(event, { await setUserSession(event, {
user: { user: {
@@ -10,6 +7,9 @@ export default oauth.googleEventHandler({
username: String(user.name).trim(), username: String(user.name).trim(),
}, },
}) })
return sendRedirect(event, '/') return sendRedirect(event, getCookie(event, 'last-route') || '/')
},
onError(error: any) {
console.error('Google OAuth error:', error)
}, },
}) })