Я пытаюсь использовать NodeJS
, чтобы очистить веб-сайт, для которого требуется логин POST
. Затем, как только я войду в систему, я могу получить доступ к отдельной веб-странице на GET
.Как сохранить сеанс запроса в NodeJS
Первая проблема прямо сейчас входа в систему. Я пытался использовать request
для POST
регистрационную информацию, но ответа я не по всей видимости, вошли в систему.
exports.getstats = function (req, res) {
request.post({url : requesturl, form: lform}, function(err, response, body) {
res.writeHeader(200, {"Content-Type": "text/html"});
res.write(body);
res.end();
});
};
Здесь я просто пересылаю страницу, которую я возвращаю, но на странице, которую я возвращаю, показывается форма входа в систему, и если я попытаюсь получить доступ к другой странице, то она говорит, что я не вошел в систему.
Мне кажется, мне нужно поддерживать клиентскую сторону сессии и файлов cookie, но я не могу найти никаких ресурсов, чтобы помочь мне понять, как это сделать.
В последующем наблюдении я закончил с использованием zombiejs, чтобы получить функциональность мне нужно
Это очень помогло. Я все еще безуспешно вошел в систему, как вы сказали. Я не мог понять, чего не хватает. Я использую POST и добавляю данные формы, но по какой-то причине сервер php, к которому я подключаюсь, никогда не отвечает с «зарегистрированной» страницей. Я буду продолжать работать над этим – Ryan
Да, это зависит от их кода на стороне сервера, который вы в основном используете для обратной инженерии. Вы уверены, что работаете с токенами CSRF, если они ими пользуются? Возможно, они обнюхивают пользовательский агент? У вас есть GET /, чтобы сначала получить файл cookie сеанса, затем убедитесь, что ваш POST для входа в систему включает этот файл cookie? И т. Д. –
Я добавил заголовки для пользовательского агента, но я думаю, что они используют скрипты на стороне клиента для входа в систему. В одном из моих ответов я прочитал «Пожалуйста, включите скрипты для входа». Я застрял сейчас :( – Ryan