Я новичок в node.js и экспресс.Я хочу войти в API отдыха.API предоставляет конечную точку входа в систему, и когда я вхожу туда, я получаю ответ, а в заголовке ответа находится массив с несколькими полями, такими как:
[0]: "JSESSIONID=<id>;path=<path>;HttpOnly"
[1]: ...
[2]: "userId=<userid>;Max-Age=1000000000;path=/;Secure;HttpOnly" ...
Промежуточному программному обеспечению для файла cookie сеанса требуются имя сеанса и ключи(Являются ли ключи в массиве? Это то, что хранится в ключах var session ниже. Я не уверен, что использую это правильно.)
Я хотел использовать экспресс-и cookie-сессию промежуточного программного обеспечения (https://github.com/expressjs/cookie-session):
app.get('/showorders', function(req, res){
request({
uri: "...",
body: postBody,
method: 'POST',
headers: {
'Content-Type': 'application/xml'
}
}, function (error, response, body) {
var sessionkeys = response.headers["set-cookie"];
app.use(cookieSession({
name: "testsession",
keys: sessionkeys
}));
res.send(response);
});
request({
uri: "...",
body: postBody,
method: 'GET',
headers: {
'cookie': req.session
}
}, function (error, response, body) {
res.send(body);
});
});
(в этом примере я удалил URL и некоторые другие данные)
Я получаю сообщение об ошибке «Нет входа в систему».
Первый(вход в систему) конечная точка дает мне «успех», поэтому первый запрос кажется нормальным. Но как он работает в node.js с сеансами? Как я могу создать рабочий сеанс и получить с него данные из остальных API?