Xandr24
@Xandr24
учиться и еще раз учиться

Почему выдает ошибку при работе с модулем fetch?

Добрый день парни, начинаю работать с модулем fetch и хотел для примера попробовать авторизоваться на стороннем сайте, для этого выбрал один из сайтов.
Чекнул заголовки при авторизации и внес их в объект headers,
запускаю код и в итоге ошибка 422 (сервер успешно принял запрос, может работать с указанным видом данных (например, в теле запроса находится XML-документ, имеющий верный синтаксис), однако имеется какая-то логическая ошибка, из-за которой невозможно произвести операцию над ресурсом), в чем не правильность кода??? помогите пожалуйста!!!
const fetch = require('node-fetch');
var server = 'https://ask.fm/login';

myHeaders = ({
  Cookie: "Вставил Сюда Кукис",
  "Origin": "https://ask.fm",
  "Accept-Encoding": "gzip, deflate, br",
  "Accept-Language": "ru,en-US;q=0.8,en;q=0.6,zh;q=0.4,zh-TW;q=0.2,zh-CN;q=0.2",
  "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36",
  "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
  "Accept": "application/json, text/javascript, */*; q=0.01",
  "Referer": "https://ask.fm/login",
  "X-Requested-With": "XMLHttpRequest",
  "Connection": "keep-alive",
  "Body": {utf8: "✓",
        authenticity_token: "NlYqtcoegnDU5gyBqgMX/AM0/YekJLZRrt/wohWEeN5ZLOXPwxQXUjUxFT5CwYpQEmWcZ7Sq4+zfkDYBGKORZw==",
        login: "bra.tok@bk.ru",
        password: "1q2w3e4r",
        remember_me: 1
  }
});

fetch(server, { method: 'POST', headers: myHeaders})
  .then((res) => {
    console.log(res)
  return res.json()
  })
  .then((json) => {
    console.log(json)
  })
  .catch(function(error) { console.log(error); });


Вот ответ консоли
Response {
  size: 0,
  timeout: 0,
  [Symbol(Body internals)]:
   { body:
      PassThrough {

        _readableState: [ReadableState],
        readable: true,
        _events: [Object],
        _eventsCount: 2,
        _maxListeners: undefined,
        _writableState: [WritableState],
        writable: false,
        allowHalfOpen: true,
        _transformState: [Object] },
     disturbed: false,
     error: null },
  [Symbol(Response internals)]:
   { url: 'https://ask.fm/login',
     status: 422,
     statusText: 'Unprocessable Entity',
     headers: Headers { [Symbol(map)]: [Object] } } }
{ error: 'Error' }
  • Вопрос задан
  • 376 просмотров
Пригласить эксперта
Ответы на вопрос 1
@mihmig
Вижу, что тело запроса в формате application/x-www-form-urlencoded Вы передаёте в заголовках запроса
А нужно в самом теле (воспользуйтесь formData)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы