繁体   English   中英

Next.js API 路由无法设置cookie

[英]Next.js API route can't set cookie

我似乎无法让服务器在客户端上发送/设置 cookies。 当我打开开发人员并检查重定向时,没有发送或设置 cookies。

// pages/api/auth/github.ts
const handler: NextApiHandler = async (request, response) => {
  
  // Use request.query.code to fetch access token, ect.

  response.setHeader(
    'Set-Cookie',
    serialize('token', data.access_token, {
      path: '/',
    }),
  );

  response.redirect(`http://${request.headers.host}`);
};

我已经添加

{ sameSite: 'lax' } 

到 cookie 选项,它现在可以工作了。

完整的工作示例:

// pages/api/auth/github.ts
const handler: NextApiHandler = async (request, response) => {
  
  // Use request.query.code to fetch access token, ect.

  response.setHeader(
    'Set-Cookie',
    serialize('token', data.access_token, {
      path: '/',
      sameSite: 'lax'
    }),
  );

  response.redirect(`http://${request.headers.host}`);
};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM