@kator

Как изменить кодировку запроса в Node.js?

Пишу парсер для одного торрент-трекера.

  1. Пользователь вводит искомое слово в браузере.
  2. Node.js получает его, кодирует и, сформировав строку, делает примерно такой запрос
    `http://trackername.org/forum/portal.php?word=${whatSearch}`
    .
  3. Я получаю html-страницу и разбираю её.


Проблема в том, что тот сайт использует кодировку windows-1251, поэтому поиск работает только с латиницей, а с кириллицей нет (html то мне возвращается, но в результате поиска "Ничего не найдено").

Я попробовал изменить кодировку с помощью iconv:
const whatSearch = iconv.encode(searchWord, 'win1251')
и отправлять в POST запросе как буфером, так и строкой. Это дало результат, но возвращается совсем не то что нужно (пишу "Игра престолов", а находит книгу "Конёк-горбунок").

В то же время в терминале через cURL все работает как нужно и даже без флага --data-urlencode.

Как мне добиться того же в ноде?
  • Вопрос задан
  • 27 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Spice IT Recruitment Москва
До 200 000 руб.
Взахлёб Ульяновск
от 90 000 до 120 000 руб.
IQ Oрtiоn Software Санкт-Петербург
от 140 000 до 170 000 руб.
19 сент. 2019, в 13:18
5000 руб./за проект
19 сент. 2019, в 13:16
20000 руб./за проект