我正在尝试使用multipart/form-data
将图像从互联网发送到API。
我可以使用request.pipe(fs.createWriteStream)
将图片保存在临时文件夹中,然后使用fs.createReadStream
上传
但是如何在不将其保存在临时文件夹中的情况下执行此操作?
我尝试创建新的request
并将正文作为new Buffer
发送,但无法正常工作。
额外信息:
我正在实施Telegram Bot API方法sendPhoto: https://core.telegram.org/bots/api#sendphoto
我正在使用请求模块进行集成: https://github.com/request/request
感谢。
答案 0 :(得分:2)
使用请求节点库,您group
在frequency
中设置encoding: null
。所以二进制内容存储在一个对象(Buffer)中。
要使用can get binary content from the resource发送照片,您将执行以下操作:
requestSettings
答案 1 :(得分:0)
我有同样的问题,我使用请求承诺库
解决了下一个代码 const rp = require('request-promise');
const req = {
'url': 'https://store.server.com',
'json': true,
'resolveWithFullResponse': true
};
req['formData'] = {
media: rp.get('https://videourl.com')
};
return rp.post(req)
.then(response => return response)
.catch(error => return throw error);