Javascript 更改twitter个人资料图片的Bot

Javascript 更改twitter个人资料图片的Bot,javascript,node.js,twitter,bots,Javascript,Node.js,Twitter,Bots,嘿,我想用nodejs编码一个机器人来更改一张个人资料图片 var Twitter = require('twitter'); var data = require('fs').readFileSync('image1.png'); var client = new Twitter({ consumer_key: 'asd', consumer_secret: 'asd', access_token: 'asd', access_token_secret: 'a

嘿,我想用nodejs编码一个机器人来更改一张个人资料图片

var Twitter = require('twitter');
var data = require('fs').readFileSync('image1.png');

var client = new Twitter({
    consumer_key: 'asd',
    consumer_secret: 'asd',
    access_token: 'asd',
    access_token_secret: 'asd'
});

client.post('account/update_profile_image', {image: data},  function(error, tweet, response) {
  console.log("done");  // Raw response object.
});

嗯,它似乎可以工作,但我的个人资料图片没有改变

如文档中所述,图像必须是base64编码的。以下是工作代码:

var fs = require('fs');
var Twit = require('twit'); // npm install twit

var T = new Twit({
    consumer_key:         '*',
    consumer_secret:      '*',
    access_token:         '*',
    access_token_secret:  '*'
});

var image64str = fs.readFileSync('kitten.jpg', {encoding: 'base64'});

T.post('account/update_profile_image', { image: image64str }, function(err) {
    if(err) {console.error(err); return;}
    console.log('done');
});

你所说的“似乎有效,但我的个人资料图片不变”是什么意思?这听起来让我心碎。你看到什么错误了吗?如果你调试和评估变量,有什么有用的吗?@JeffMergler好的,当我执行代码时,没有错误,但是我的配置文件图片上没有发生任何事情。你看过文档了吗“配置文件的头像图像,base64编码。必须是大小小于700 KB的有效GIF、JPG或PNG图像。宽度大于400像素的图像将被缩小。”@JeffProd yes尝试将我的实际配置文件图片更改为另一个,并尝试用我使用的“正常”图片进行更新,但是它没有生效,我没有看到任何错误消息谢谢伙计,很抱歉误导lol我不太擅长,我在想我可以直接使用一个profil图片我得到了另一个错误“JSON解码错误:Twitter HTTP响应主体不是有效的JSON”,你没有任何错误吗?不,我没有错误。请尝试“npm install twit”。我删除了我的版本并重新安装了它,它可以工作,感谢idk为什么它以前不想工作