我正在使用Twitter
模块将nodejs上传媒体到我的Twitter帐户。作为此处的示例程序https://github.com/desmondmorris/node-twitter/tree/master/examples#media。
我没有使用系统中的图像,而是传递了图像的base64编码字符串。当我运行这个程序时,它会在一个循环中在控制台中输出base64字符串staff
,一段时间后它会崩溃并且不会上传我的图像。
(image)
所以我尝试了不同的方法。我将base64编码图像保存到// Load your image
var data = require('fs').readFileSync(image);
// Make post request on media endpoint. Pass file data as media parameter
client.post('media/upload', {media: image}, function(error, media, response){
if (!error) {
// If successful, a media object will be returned.
console.log(media);
// Lets tweet it
var status = {
status: 'I am a tweet',
media_ids: media.media_id_string // Pass the media id string
}
client.post('statuses/update', status, function(error, tweet, response){
if (!error) {
console.log(tweet);
}
});
}
else{
console.log("error upload");
}
});
out.png
这个代码输出错误说
错误:ENOENT:没有这样的文件或目录,打开' D:\ Local server \ nodejs \ out.png'
此文件确实存在我已确认
更新
Api返回fs.writeFile("out.png", data.image, 'base64', function (err) {
console.log(err);
});
var data = require('fs').readFileSync("out.png");
答案 0 :(得分:0)
嗨,有几个nodejs api允许作为Twitter的客户端库,您可以使用它来将您的媒体上传到您的Twitter帐户,最受欢迎的twitter和are node-twitter-api