twitter - 使用 Google Script 发推文

标签 twitter oauth google-apps-script

我从 this question 中提取了此代码.

应用作者的解决方案,我总是得到这个错误:enter image description here

我从这里创建的 twitter 应用程序中获取我的 key 和 secret :

enter image description here

我已将应用程序配置为编写...

我究竟做错了什么?

//post tweet
function oAuth() {
  var CONSUMER_KEY = "xxxx";
  var CONSUMER_SECRET = "xxxxx";
  ScriptProperties.setProperty("TWITTER_CONSUMER_KEY", CONSUMER_KEY);
  ScriptProperties.setProperty("TWITTER_CONSUMER_SECRET", CONSUMER_SECRET);
  var oauthConfig = UrlFetchApp.addOAuthService("twitter");
  oauthConfig.setAccessTokenUrl("https://api.twitter.com/oauth/access_token");
  oauthConfig.setRequestTokenUrl("https://api.twitter.com/oauth/request_token");
  oauthConfig.setAuthorizationUrl("https://api.twitter.com/oauth/authenticate");
  oauthConfig.setConsumerKey(ScriptProperties.getProperty("TWITTER_CONSUMER_KEY"));
  oauthConfig.setConsumerSecret(ScriptProperties.getProperty("TWITTER_CONSUMER_SECRET"));
  var options = {muteHttpExceptions: true,oAuthServiceName:'twitter',oAuthUseToken:'always'}
  var url = "https://api.twitter.com/1.1/statuses/user_timeline.json";
  var response = UrlFetchApp.fetch(url, options).getContentText();
  Logger.log(response);
}
function postTweet() {
  oAuth();
  Logger.log('oAuth complete');
  var status='Operational!';
  var options = {
    "method": "post",
    "oAuthServiceName": "twitter",
    "oAuthUseToken": "always",
    "payload":{"status":status}
  };
  var url = "https://api.twitter.com/1.1/statuses/update.json";
  Logger.log('begin post');
  var request = UrlFetchApp.fetch(url, options);
  Logger.log('post complete');
}

最佳答案

我也收到此错误,直到我意识到您需要在 Twitter 中指定一个“回调 URL”:

Twitter CallBack URL

将其指定为“https://script.google.com” ' 或 ' https://script.google.com/macros ' 允许我授权。我已经对此进行了测试,目前正在让我发布您列出的代码。

但是,请注意,如果您尝试两次发布相同的“状态”文本,则会引发以下错误:

Duplicate Status Error

这不是问题,因为您只需更改变量“状态”的值,但它第一次让我感到困惑。

关于twitter - 使用 Google Script 发推文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25982488/

相关文章:

oauth - Twitter API - 登出

Android OAUTH token 存储

python - Tweepy Streaming - 停止收集 x 数量的推文

javascript - Google 登录 - 检查用户是否属于特定组织

.net - 如何将 Google Analytics API 与 2-legged OAuth(Google Apps for business)一起使用?

javascript - 如何使用 Google Apps 脚本获取上个月日期的正确格式

Javascript 未在 google apps 脚本中运行

javascript - 使用 Google 脚本和电子表格创建时间触发器

jquery - Twitter 时间轴小部件因 JQuery “Hide/Show” 而消失

java - twitter4j 和 twitter 时间戳处理