Обработка ответа от удаленного сервера nodejs - PullRequest
0 голосов
/ 30 октября 2018

Я делаю POST-запрос php из приложения js узла на удаленный сервер. Ответ от удаленного сервера представляет собой сгенерированный php файл "PDF".

Я хочу сохранить этот PDF-файл в папке.

var express = require('express');
var app = express();
var request = require("request");


request({
  uri: "http://103.251.43.139/~ksebuser/orumabills/upload/billview/bill_view_click.php",
  method: "POST",
  form: {
    'office':'5617',
    't_consumer-no_0':'1024'
  }
}, function(error, response, body) {
  const data = new Uint8Array(Buffer.from(response));
fs.writeFile('example.txt', data, (err) => {
  if (err) throw err;
  console.log('The file has been saved!');
});
});

app.listen(3000);

это реальная форма http://103.251.43.139/~ksebuser/orumabills/upload/billview/

там я дал значения

ОФИС: Adimali (5617) и ПОТРЕБИТЕЛЬСКИЙ НОМЕР: 1024

1 Ответ

0 голосов
/ 30 октября 2018

Документация request гласит:

Примечание: , если вы ожидаете двоичные данные, вы должны установить encoding: null.

Поскольку PDF-файлы могут содержать двоичные данные, вы должны использовать эту опцию:

request(
  {
    uri:
      "http://103.251.43.139/~ksebuser/orumabills/upload/billview/bill_view_click.php",
    method: "POST",
    form: {
      office: "5617",
      "t_consumer-no_0": "1024"
    },
    encoding : null
  },
  function(error, response, body) {
    fs.writeFile('example.txt', body, err => {
      if (err) throw err;
      console.log("The file has been saved!");
    });
  }
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...