带有request.js的媒体更新Twitter

时间:2013-12-29 22:32:01

标签: node.js twitter

我正在尝试使用node.js和request.js在twitter上发布update_with_media。我想张贴图片base64 encode:

    var request = require('request');
    var r = request.post({
       url: "https://api.twitter.com/1.1/statuses/update_with_media.json",
       oauth: {
           consumer_key: '...',
           consumer_secret: '...',
           token: '...',
           token_secret: '...'
       }
    }, function(err, response, body) {
       return console.log(err, body);
    });
    var form = r.form();
    form.append("status", "Test...");
    form.append("media[]", "...");

很遗憾,我收到错误消息:'{“errors”:[{“code”:189,“message”:“创建状态时出错。”}]}' 在我尝试发布没有图像的正常更新之前。这很好。

我做错了什么?

1 个答案:

答案 0 :(得分:2)

看一下adaline / twitter_update_with_media.coffee帮助: 工作解决方案如下:

  var buffer = new Buffer(imageData, 'base64');     

  var r = request.post({
     url: "https://api.twitter.com/1.1/statuses/update_with_media.json",

     oauth: {
        consumer_key: '...',
        consumer_secret: '...',
        token: '...',
        token_secret: '...'
     }
  }, function(err, response, body) {
     return console.log(err, body);
  });
  var form = r.form();
  form.append('status', "TEST...");
  form.append('media[]', buffer);