首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改twitter配置文件图片的脚本

更改twitter配置文件图片的脚本
EN

Stack Overflow用户
提问于 2021-07-16 11:43:49
回答 1查看 167关注 0票数 0

我使用的是twitter-lite库,我想更新Twi配置文件图片。

现在我正在尝试这个:

代码语言:javascript
复制
var fs = require('fs');
var Twit = require('twitter-lite'); 

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');
});

但我得到了以下错误:

/Users/huyvunguyen/node_modules/node-fetch/lib/index.js:272返回Body.Promise.reject(新FetchError(invalid json response body at ${_this2.url} reason: ${err.message},‘无效- JSON’);^ FetchError:https://api.twitter.com/1.1/account/update_profile_image.json原因处的无效json响应主体:在/Users/huyvunguyen/node_modules/node-fetch/lib/index.js:272:32 at processTicksAndRejections处意外结束json输入(节点:内部/进程/任务队列:96:5){ type:‘无效-json’}

有人知道我怎么调试这个吗?

EN

回答 1

Stack Overflow用户

发布于 2021-07-16 13:47:44

我不知道到底是什么导致了这个错误。它也发生在我的结尾。

但是twitter-api-client对相同的代码工作得完美无缺。也许这是一个特定于库的错误。

此外,.post方法在twitter-lite中不需要回调。更多信息,这里

下面是您可以使用的内容:

代码语言:javascript
复制
var fs = require('fs');
const { TwitterClient } = require('twitter-api-client')

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

client = new TwitterClient({
    apiKey: '',
    apiSecret: '',
    accessToken: '',
    accessTokenSecret: ''
})

client.accountsAndUsers.accountUpdateProfileImage({image: image64str}).catch(e=>console.log(e)).then(res => console.log(res))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68408441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档