【发布时间】:2012-10-06 22:43:20
【问题描述】:
我正在尝试使用 Oauth 模块将图像发布到 Twitter。这是我所拥有的:
它引发 403 错误,我知道我在将媒体添加到帖子的方式上做错了,但我只是不确定从这里去哪里。
var https = require('https');
var OAuth= require('oauth').OAuth;
var keys = require('./twitterkeys');
var twitterer = new OAuth(
"https://api.twitter.com/oauth/request_token",
"https://api.twitter.com/oauth/access_token",
keys.consumerKey,
keys.consumerSecret,
"1.0",
null,
"HMAC-SHA1"
);
var params = {
status : "Tiger!",
media : [("data:" + mimeType + ";base64,") + fs.readFileSync(path,'base64')]
};
//function(url, oauth_token, oauth_token_secret, post_body, post_content_type, callback)
twitterer.post("https://upload.twitter.com/1/statuses/update_with_media.json",
keys.token, keys.secret, params, "multipart/form-data",
function (error, data, response2) {
if(error){
console.log('Error: Something is wrong.\n'+JSON.stringify(error)+'\n');
}else{
console.log('Twitter status updated.\n');
console.log(response2+'\n');
}
});
这是我相信我应该做的,但我不知道如何在 Node.js Oauth 模块中做到这一点。 Posting image to twitter using Twitter+OAuth
【问题讨论】:
-
首先,你有没有安装nodejs?
-
是的,我可以通过 api.twiiter.com 使用正常状态/更新来更新我的 Twitter 状态,但不能使用媒体。
-
我认为将表单数据附加到帖子的问题。
-
你解决过这个问题吗?我需要同样的东西。
-
不,从来没有,我只是放弃并使用 twitpic 和他们的节点模块。对解决方案不满意,但需要继续前进。
标签: node.js twitter twitter-oauth