所以我想使用 npm 请求模块将图像上传到 Tumblr API。熟悉 facebook 和 twitter API,这些请求的工作方式如下:
对于 Facebook:
- 创建一个读取流: var media = fs.createReadStrem('imgpath');
- 使用访问数据和 uri 集发出发布请求,并且:
options.formData = {
source: media,
caption: "test"
};
对于 Twitter:
- 创建 readstream
- 将图像上传到 Twitter:
options.formData = {
media: media
};
这完美无瑕。
但是现在使用 Tumblr,我需要先将图像编码为“数组(URL 编码的二进制内容)”。
所以我的问题是。我如何对其进行编码并将其以正确的格式提供给 npm 请求模块。为此,我首先需要使用fs.readFileSync加载图像,但是否可以像使用 FB 和 Twitter 一样将图像作为 readStream 上传到 Tumblr?
这是我尝试过的事情之一:
var img = fs.readFileSync('img');
options.form = {
type: 'photo',
data: [img.toString('binary')]
}
这给了我一个 400:上传照片时出错。
我还研究了tumblrwks,它有效,但我真的很想通过request完成这件事
谢谢!:)