Я пытаюсь войти в свое приложение Node.js (Express) с помощью другого сценария, созданного Node.js, чтобы попытаться создать виртуального бота в моем приложении.
Сначала я отправил POST через пакет «запрос» на мой /api/user/login, а затем попытался получить данные из /api/user/session, где я должен быть зарегистрирован.
Скрипт запроса:
request.post({
url: "http://localhost:1717/api/user/login",
form: {
email: "xxx@xxx",
password: "xxx"
}
}, (err1, res1, body1) => {
console.log(res1.statusCode); // console returned 200 cause login was successfull
request.get({
url: "http://localhost:1717/api/user/session",
}, (err2, res2, body2) => {
console.log(res2.statusCode); // console returned 401 cause im not logged
});
});
Экспресс скрипт:
app.post("/api/user/login", (req, res) => {
const email = req.body.email;
const password = sha256(req.body.password);
if(isValid(email) && isValid(password)) // for example
req.session.userID = 1; // for example
res.sendStatus(200);
}
else{
res.sendStatus(404);
}
});
app.get("/api/user/session", (req, res) => {
const userID = req.session.userID;
if(userID){
res.status(200).send(req.session.id);
}
else{
res.sendStatus(401) // Unauthorized
}
});
Возможно, мне нужно отправить действительный файл cookie для метода GET в Express. Пожалуйста, дайте мне знать, как это сделать. Спасибо.