This commit is contained in:
Angelo Schuler Piletti 2024-11-20 06:35:52 -05:00 committed by GitHub
commit 982c766cb4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -231,3 +231,36 @@ export default defineEventHandler(event => {
``` ```
:link-example{to="/docs/examples/advanced/use-cookie"} :link-example{to="/docs/examples/advanced/use-cookie"}
## Handling Authentication with Cookies
You can manage authentication tokens using cookies like this:
```ts [plugins/auth.ts]
export default defineNuxtPlugin(() => {
const nuxtApp = useNuxtApp()
const authStore = useAuthStore()
const accessToken = useCookie('accessToken', {
sameSite: 'strict',
})
return {
provide: {
getAccessToken() {
return accessToken.value
},
setAccessToken(accessToken: string) {
accessToken.value = accessToken
},
loginUser(user: User) {
nuxtApp.$setAccessToken(user.accessToken)
authStore.setUser(user)
},
logout() {
nuxtApp.$setAccessToken('')
authStore.logout()
},
},
}
})
```