如何解决Next-Auth:getSession 返回 null
通过浏览器对以下代码的 API 请求工作正常,即返回 {"success":true,"data":{"user": ...}}
,但使用 cURL 或 REST-Client VS Code 扩展返回 null,即 {"success":true,"data":null}
。
下面是我通过 /api/query
端点返回会话对象的代码:
import { getSession } from "next-auth/client";
export default async (req,res) => {
const session = await getSession({ req });
res.status(200).json({ success: true,data: session });
};
我也尝试使用端点 /api/auth/session
获取会话。端点使用浏览器返回会话,但使用 cURL 返回 null。
这是 cURL 请求 curl http://localhost:3000/api/auth/session
。
这种行为的原因是什么?
附注:我使用 Google OAuth 进行身份验证。
解决方法
身份验证取决于 cookie,您的浏览器会自动发送 cookie。但是当您使用 cURL 时,cookie 不存在,因此 auth 无法进行身份验证。 Next-Auth cookies
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。