Я посмотрел в блогах и немного погуглил по этому поводу, но я не уверен, почему у меня возникла эта проблема и как ее исправить.Приложение, с которым я работаю, использует множество функций генератора и роутер koa.Это своего рода старый проект, и у меня нет большого опыта работы с узлами, больше с Java.В любом случае, я чувствую, что этот код должен работать, но это не так.Я создал конечную точку сообщения для загрузки файлов.Когда я нажимаю на конечную точку в почтальоне, я вижу, что сервер принимает файл, но конечная точка никогда не возвращает ответ, а почтальон просто зависает.Кто-нибудь может сказать мне, почему это не работает?Как я могу вернуть this.body и вернуть ответ 200.
Конечная точка, которую нужно нажать
apiV1.post('/s3-file/upload/:path/:geo', s3Files.uploadFileToBucket);
Логика обработки загрузки файла
const parse = require('co-busboy');
function * uploadFileToBucket () {
const parts = parse(this);
let part;
while (part = yield parts()) {
if (part.length) {
console.warn('FileUpload was not a parsable file with request: ', this.request);
} else {
// otherwise, it's a stream
// part.pipe(fs.createWriteStream('some file.txt'))
this.body = part._readableState.buffer.head.data.toString();
}
}
}
Не знаюпонять почему это не работает.Когда я присваиваю данные this.body в некоторых запросах get в том же проекте, конечная точка get работает нормально.Как сделать так, чтобы этот почтовый запрос возвращал ответ 200 вместе с содержимым загруженного файла?