使用tumblr.js api将多个图像发布到tumblr



我正在尝试创建一个应用程序,该应用程序可以使用tumblr.js api向tumblr发送帖子。我可以使用createPhotoPost方法发送单个图像,但我必须通过这种方法在单个帖子中发送多个图像。

从文档中可以看出,createPhotoPost方法有一个"数据"参数,可以是一个带有"URL编码的二进制内容"的数组

当我试图在数据数组中发送一些东西时,它会返回"[错误:表单数据:不支持数组。]"。

有人能帮助解决这个问题吗?请解释我们应该在数组中传递什么(我真的没有得到URL编码的二进制内容)?

提前感谢

tumblr.js中存在错误https://tumblr.github.io/tumblr.js/tumblr.js.html#line504

文档位于https://www.tumblr.com/docs/en/api/v2#posting是正确的。

基本上,问题是它不应该是
data = [ one , two ]
它的垃圾
params['data[0]'] = one ; params['data[1]'] = two;(?PHP公约)


var request = require('request')// already a tumblr.js dependency
var currentRequest = request({
              url:'https://api.tumblr.com/v2/blog/someblog.tumblr.com/post',
                     oauth:keys,
                  },function(err,response,body){
                      currentRequest//
                      debugger
                    cb()
                  })
                  var params = {
                    'type'   :'photo',
                    'caption':'Click To Verify You Are A Robot',
                  }

                  var params_images = [
                    fs.createReadStream('image'),
                    fs.createReadStream('image')
                  ]

                    // Sign it with the non-data parameters
                    currentRequest.form(params)
                    currentRequest.oauth(keys);
                    // Clear the side effects from form(param)
                    delete currentRequest.headers['content-type'];
                    delete currentRequest.body;
                    // And then add the full body
                    var form = currentRequest.form();

                    //@@@add params_images to params keys 'data[0]' 'data[1]' 'data[2]' ....
                    params_images.forEach(function(image,index){
                      params['data['+index+']']
                    })
                    for (var key in params) {
                        form.append(key, params[key]);
                    }
                    // Add the form header back
                    var form_headers = form.getHeaders()
                      for(var key in form_headers){
                      currentRequest[key] = form_headers[key]
                    }

最新更新