使用fs.createReadStream通过POST发送文件不会发送文件

时间:2018-09-12 16:51:48

标签: node.js electron node-request

我有以下代码。问题是,文件并不会总是被我的服务器捕获(托管在DigitalOcean上,这没什么大不了的,因为我什至经常无法使其在本地无业游民的计算机上工作)。

它似乎适用于较小的文件,较小的图像,但是,如果我发送较大的文件(例如全屏屏幕截图),我的服务器会告诉我已发出请求,但未找到“图像”。

我到处寻找一种方法,使createReadStream返回某种形式的promise,希望它就像在尝试从硬盘读取图像一样简单,但是我没有运气。

值得一提的是,图片是在图片生成之前生成的,但是这在回调中被调用,所以没关系。

...
    const capture = fs.createReadStream(filePath);

    request.post({
        url: UPLOAD_URL,
        method: 'POST',
        formData: {
            'image': capture,
            'token': this.token
        },
        headers: {
            'User-Agrent': 'request',
            'Content-Type': 'multipart/form-data'
        }
    }, (err, response, body) => {
...

0 个答案:

没有答案