Ошибка запроса NodeJS при отправке данных multipart / form

Я использую приложение Node.js в качестве прокси для веб-сервиса. Я могу передать простой запрос application / json с помощью body-parser, но он не может обрабатывать multipart / form-data.

Для этого я пытаюсь использовать модуль request, но у меня возникает ошибка при прикреплении файлы на запрос:

Error: write after end
    at ClientRequest.OutgoingMessage.write (_http_outgoing.js:413:15)
    at Request.write(./node_modules/request/request.js:1362:25)

Вот код, который вызывает эту ошибку:

var form_data = {};

            for (var key in req.files){
                form_data[req.files[key].fieldname] = fs.createReadStream(req.files[key].path);
                log.debug("File :", req.files[key].fieldname)
            }

            var multipart_request = request_module({
                url: 'http://example.com',
                method: ‘POST’,
                headers: req.headers,
                body: JSON.stringify({<some content here>}),
                formData: form_data
            }, function(error, response, body){

                if(error){
                    log.debug(error);
                    res.status(500).send('{"message": "Server error.}');
                }
                else{
                    res.status(response.statusCode).send(body);
                }

            });

Есть ли другое решение для этого?


person YoussefElManssouri    schedule 11.08.2015    source источник
comment
Я не думаю, что у вас может быть и body, и formData. Вы пробовали бросить body?   -  person mscdex    schedule 11.08.2015
comment
Это была ошибка, я удалил тело, и теперь оно работает, спасибо!   -  person YoussefElManssouri    schedule 11.08.2015


Ответы (1)


Если вы предоставите form или formData, вы также не сможете указать body в параметрах запроса.

person mscdex    schedule 11.08.2015