我要求使用媒体更新Twitter状态。我正在使用以下Twitter API。 https://dev.twitter.com/docs/api/1.1/post/statuses/update_with_media。
使用nodejs twit library" https://github.com/ttezel/twit "
twit = new Twit({
consumer_key: TWITTER_OAUTH_KEY
, consumer_secret: TWITTER_OAUTH_SECRET
, access_token: 'access token'
, access_token_secret: 'secret'
});
wallpost = {};
wallpost.status = 'media upload1 deliverdfd\nhttp://www.animalplanet.com/';
wallpost.media = [{
"media_url": "http:\/\/pbs.twimg.com\/media\/A7EiDWcCYAAZT1D.jpg",
"media_url_https": "https:\/\/pbs.twimg.com\/media\/A7EiDWcCYAAZT1D.jpg",
"url": "http:\/\/t.co\/bAJE6Vom",
"display_url": "pic.twitter.com\/bAJE6Vom",
"expanded_url": "http:\/\/twitter.com\/BarackObama\/status\/266031293945503744\/photo\/1",
"type": "photo",
}];
我的帖子请求
twit.post( "update_with_media", wallpost, function(err, res2) {
if (err) {
return next(err);
}
console.info(res2);
// returns the post id
res.json({
status: 200,
info: "OK",
id: res2.id
});
});
收到错误消息 [{"代码":195,"消息":"缺少或无效的网址参数"}]} 。 我用谷歌搜索它发现了一些线程,其中一些提到有关设置内容类型的多种形式数据。但我不知道如何设置内容类型。
我试过了
var multipart = [{
"Content-Type": "multipart/form-data"
}];
wallpost.content_type = multipart;
不适合我。请帮我解决这个问题。谢谢
答案 0 :(得分:1)
从您链接的文档
支持的图像格式为PNG,JPG和GIF,包括最高3MB的动画GIF。此数据必须是原始图像字节或编码为base64。
您只能将图片 - 而非链接上传到图片。在本地保存图像并将其作为base64编码的字符串添加到media
。
您无法发送链接 - 甚至是Twitter图片。