mirror of https://github.com/nuxt/nuxt.git
Merge 63912b6075
into e644960794
This commit is contained in:
commit
5dd76b9d5b
|
@ -135,6 +135,9 @@ export function useCookie<T = string | null | undefined> (name: string, _opts?:
|
||||||
}
|
}
|
||||||
} else if (import.meta.server) {
|
} else if (import.meta.server) {
|
||||||
const nuxtApp = useNuxtApp()
|
const nuxtApp = useNuxtApp()
|
||||||
|
if (!isEqual(cookie.value, cookies[name])) {
|
||||||
|
writeServerTempararyCookie(useRequestEvent(nuxtApp), name, cookie.value)
|
||||||
|
}
|
||||||
const writeFinalCookieValue = () => {
|
const writeFinalCookieValue = () => {
|
||||||
if (opts.readonly || isEqual(cookie.value, cookies[name])) { return }
|
if (opts.readonly || isEqual(cookie.value, cookies[name])) { return }
|
||||||
nuxtApp._cookies ||= {}
|
nuxtApp._cookies ||= {}
|
||||||
|
@ -186,6 +189,16 @@ function writeClientCookie (name: string, value: any, opts: CookieSerializeOptio
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function writeServerTempararyCookie (event: H3Event, name: string, value: any) {
|
||||||
|
// add cookie to req.headers.cookie ex) cookie is added or updated in plugin
|
||||||
|
if (event) {
|
||||||
|
const cookie = event.node.req.headers.cookie || ''
|
||||||
|
event.node.req.headers.cookie = cookie
|
||||||
|
? `${cookie}; ${name}=${value}`
|
||||||
|
: `${name}=${value}`
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function writeServerCookie (event: H3Event, name: string, value: any, opts: CookieSerializeOptions = {}) {
|
function writeServerCookie (event: H3Event, name: string, value: any, opts: CookieSerializeOptions = {}) {
|
||||||
if (event) {
|
if (event) {
|
||||||
// update if value is set
|
// update if value is set
|
||||||
|
|
Loading…
Reference in New Issue