mirror of
https://github.com/nuxt/nuxt.git
synced 2024-11-29 17:07:22 +00:00
docs: Add example for handling authentication with useCookie in Nuxt docs
This commit is contained in:
parent
e0638856c1
commit
580cc68024
@ -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()
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
})
|
||||||
|
```
|
Loading…
Reference in New Issue
Block a user