我有以下代码。问题是,文件并不会总是被我的服务器捕获(托管在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) => {
...