如何在 hooks.js 中设置多个 cookie?
How do I set multiple cookies in hooks.js?
我在以下代码中设置多个 cookie 时总是失败:
// src/hooks.js
import cookie from 'cookie';
export const handle = async ({ event, resolve }) => {
console.log('handle');
const cookies = cookie.parse(event.request.headers.get('cookie') || '');
event.locals.sessionId = cookies.sessionId || null;
const response = await resolve(event);
if (event.locals.sessionId) {
response.headers.set(
'set-cookie',
cookie.serialize('sessionId', event.locals.sessionId, {
path: '/',
httpOnly: true,
secure: process.env.NODE_ENV === 'production',
maxAge: 604800
})
);
}
return response;
};
有没有可用的例子?
使用response.headers.append('set-cookie', /* cookie */)
代替.set(...)
根据 Fetch spec,append
将附加一个 header 而 set
将用新值替换 header 的值。
我在以下代码中设置多个 cookie 时总是失败:
// src/hooks.js
import cookie from 'cookie';
export const handle = async ({ event, resolve }) => {
console.log('handle');
const cookies = cookie.parse(event.request.headers.get('cookie') || '');
event.locals.sessionId = cookies.sessionId || null;
const response = await resolve(event);
if (event.locals.sessionId) {
response.headers.set(
'set-cookie',
cookie.serialize('sessionId', event.locals.sessionId, {
path: '/',
httpOnly: true,
secure: process.env.NODE_ENV === 'production',
maxAge: 604800
})
);
}
return response;
};
有没有可用的例子?
使用response.headers.append('set-cookie', /* cookie */)
代替.set(...)
根据 Fetch spec,append
将附加一个 header 而 set
将用新值替换 header 的值。