Выполнение POST-запроса на вход на сайт Wordpress через Nodejs - PullRequest
0 голосов
/ 25 сентября 2018

Я пытаюсь создать функциональность входа на сайты "старой школы", основанные на сеансах / файлах cookie, от Nodejs.Что я хочу сделать, так это в основном выполнить вход в систему, создать соответствующий файл cookie и затем использовать его в последующих запросах к личным страницам этого сайта.

В настоящее время я пытаюсь использовать форму -данные библиотека.Я экспериментирую против стандартного, чистого сайта WP.Это код:

var form = new FormData();
form.append('log', 'admin');
form.append('pwd', 'admin');
form.submit('https://somesite.com/wp-login.php',((err,res)=> 
{
 console.log(res.statusCode)
}))

Я получаю статус 403, хотя имя пользователя и пароль верны.Глядя на весь объект ответа, я не могу найти ничего полезного, поскольку я не уверен, что искать.

Есть ли что-то еще, что должно прийти с этим запросом?Возможно, некоторые заголовки?Я вижу в dev-tools, что браузер отправляет различные заголовки, такие как: cookie: wordpress_test_cookie = WP + Cookie + check Может ли это быть уместно?

Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 28 сентября 2018

Полагаю, вам нужно включить метод в ваш запрос.Попробуйте изменить ваш код следующим образом:

var FormData = require('form-data')
var form = new FormData()
var options = {
"url":"https://somesite.com/wp-login.php",
"auth":{
    "user":"admin",
    "password":"admin"
},
"method":"POST"
}
form.submit(options, (err,res) => 
{
  console.log(res.statusCode)
})

Кроме того, ошибка 403 означает, что запрос запрещен.Поэтому, даже если ваши учетные данные верны, убедитесь, что у вас есть разрешения для выполнения запроса Post на сайте, на котором вы пытаетесь.

...