Я отправляю данные из приложения nodejs в конечную точку покоя пружины. Я следовал примеру с form-data до fs.createReadStream
из файла, и это нормально. Но так как мое приложение генерирует эти данные, мне действительно нужно отправить данные, которые хранятся в переменной (в виде строки). Поэтому я следовал этому ответу , чтобы создать поток из строки, но на стороне Java я получаю сообщение об ошибке «Поток неожиданно завершился».
var form = new FormData();
form.append('id', id);
// this works
//form.append('inputFiles[]', fs.createReadStream('test.xml'));
//this does not
const Readable = require('stream').Readable;
let s = new Readable();
s._read = () => {};
s.push('some data generated by my application');
s.push(null);
form.append('inputFiles[]', s);
form.submit(url, function(error, result) {
if (error) {
console.log('Error!');
}
});
Нужно ли как-нибудь передать эти данные? Или укажите длину содержимого (если да, как мне определить длину?) Я попытался добавить { filename : 'test.xml', contentType: 'application/xml' }
к читаемому, чтобы, возможно, имитировать файл, но все равно получаю ту же ошибку.