Бот, который меняет фотографию в твиттере - PullRequest
0 голосов
/ 24 апреля 2019

Привет, я бы хотел написать боту с 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.
});

ну, похоже, это работает, но моя картинка профиля не меняется

1 Ответ

1 голос
/ 27 апреля 2019

Как сказано в документации, изображение должно быть в кодировке 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');
});
...