#curl #next.js #next-auth
Вопрос:
Запрос API для приведенного ниже кода через браузер работает нормально, т. е. возвращает {"success":true,"data":{"user": ...}}
, но использование cURL или REST-клиента ПРОТИВ расширения кода возвращает значение 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
точки. Конечная точка возвращает сеанс с помощью браузера, но возвращает значение null с помощью cURL.
Вот запрос на завиток curl http://localhost:3000/api/auth/session
.
В чем причина такого поведения?
P.S. : Я использую Google OAuth для аутентификации.
Ответ №1:
Аутентификация зависит от файлов cookie, ваш браузер автоматически отправляет файлы cookie. Но когда вы используете файлы cookie cURL, они отсутствуют, поэтому аутентификация не может быть выполнена. Далее-Аутентификация файлов cookie