Поврежденный файл с использованием запроса js - PullRequest
0 голосов
/ 29 июня 2019

Я использую запрос js для загрузки файла.

function requ(){
    const options = {
        uri: `api/tasks/${id}/attachments/${attachmentId}`
    }
    return rp.get(options)
 }

Мой вопрос:

почему работает конвейер в "res" как require (). Pipe (res) и возвращает результат запроса выше, используя "send" как

requ().then((result)=>{
    //here result is the file's representing string
    res.send(result)

})

не

Ответы [ 2 ]

0 голосов
/ 02 июля 2019

Мой файл был поврежден, потому что запрос преобразовывал тело ответа в utf8. Использование:

const options = {
    uri: `api/tasks/${id}/attachments/${attachmentId}`,
    encoding:null
}

исправил проблему

0 голосов
/ 29 июня 2019
const fs = require('fs');
requ().then((result) => {
    //here result is the file's representing string
    const path = __dirname + '/tempFiles' + Date.now(); // a temporary file to send it 
    fs.writeFile(path, result, function(err) {
        if(err) throw err;
        return res.sendFile(path);
    })
});

Подробнее о фс , ссылка 2

...