Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.03.2018, 19:36
Интересующийся
Отправить личное сообщение для dfcz112 Посмотреть профиль Найти все сообщения от dfcz112
 
Регистрация: 30.01.2018
Сообщений: 29

Отправка Post запроса с nodejs
Всем привет. Мне нужно с nodejs отправить форму, которая содержит в себе файл, и настройки. Саму форму можно посмотреть на https://www.imgonline.com.ua/grid-square.php . Т.е. мне нужно отправить такую же форму только с nodejs
Я накопал модуль needle для отправки post запроса. А вот так через модуль form-data я определяю нужные мне поля
var form = new FormData();
          form.append('uploadfile', fs.createReadStream('./files/temp.jpg'));
          form.append('ef-set', 10);
          form.append('ef-set-2', 10);
          form.append('jpeg-quality', 100);

          needle.post('https://www.imgonline.com.ua/grid-square-result.php', form, function (err, resp) {
            console.log(resp);
          });

Но в ответе получаю ошибку "указания настроек"

Последний раз редактировалось dfcz112, 24.03.2018 в 19:50.
Ответить с цитированием
  #2 (permalink)  
Старый 24.03.2018, 20:55
Профессор
Отправить личное сообщение для Audaxviator Посмотреть профиль Найти все сообщения от Audaxviator
 
Регистрация: 28.04.2017
Сообщений: 214

var request = require('request');
var fs = require('fs');

var formData = {
  'uploadfile': fs.createReadStream('file_ws.jpg'),
  'ef-set': 10,
  'ef-set-2': 10,
  'jpeg-quality': 100
};

request.post({url:'https://www.imgonline.com.ua/grid-square-result.php', formData: formData}, function (err, resp, body) {
  if (err) {
    return console.error(err);
  }
  console.log(resp.statusCode + '\n');
  console.log('body: ', body);
});
Ответить с цитированием
  #3 (permalink)  
Старый 24.03.2018, 21:02
Интересующийся
Отправить личное сообщение для dfcz112 Посмотреть профиль Найти все сообщения от dfcz112
 
Регистрация: 30.01.2018
Сообщений: 29

Сообщение от Audaxviator Посмотреть сообщение
var request = require('request');
var fs = require('fs');

var formData = {
  'uploadfile': fs.createReadStream('file_ws.jpg'),
  'ef-set': 10,
  'ef-set-2': 10,
  'jpeg-quality': 100
};

request.post({url:'https://www.imgonline.com.ua/grid-square-result.php', formData: formData}, function (err, resp, body) {
  if (err) {
    return console.error(err);
  }
  console.log(resp.statusCode + '\n');
  console.log('body: ', body);
});
так всё падает с ошибкой C:\nodejs\node_modules\form-data\lib\form_data.js:226
} else if (options.filename || value.name || value.path) {
^

TypeError: Cannot read property 'name' of null
at FormData._getContentDisposition (C:\nodejs\node_modules\form-data\lib\form_data.js:226:40)
Ответить с цитированием
  #4 (permalink)  
Старый 24.03.2018, 21:04
Интересующийся
Отправить личное сообщение для dfcz112 Посмотреть профиль Найти все сообщения от dfcz112
 
Регистрация: 30.01.2018
Сообщений: 29

А не, всё заработало! Это я не туда посмотрел. Спасибо за помощь!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как повторить нажатие кнопки после неудачного POST запроса? antonhauff AJAX и COMET 6 21.02.2018 18:03
JSONP - отправка запроса на удаленный сервер winne3r AJAX и COMET 1 06.09.2015 16:43
Проблема с отправкой POST запроса Dina777 AJAX и COMET 2 26.05.2015 21:35
Отправка запроса nodejs cyber AJAX и COMET 10 13.05.2013 20:10
Проблема при передаче запроса POST martinss AJAX и COMET 7 09.04.2011 23:35