2

我编写了以下 Google Apps 脚本函数来授权 Google 电子表格查询 Tumblr API v2(它使用 Oauth 1.0a)。

我已经尝试了回调 URL 的一些变体——我已经成功地将https://spreadsheets.google.com/macros/与 Twitter API 一起使用——但是在“授权”页面上单击“授权”后,回调 URL 会重定向到www。 google.com/script/start/并且不进行身份验证。

这是我一直在尝试的脚本 - 关于为什么这可能不起作用的任何想法?

function authorise() {
  var oauthConfig = UrlFetchApp.addOAuthService("tumblr");
  oauthConfig.setAccessTokenUrl("http://www.tumblr.com/oauth/access_token");
  oauthConfig.setRequestTokenUrl("http://www.tumblr.com/oauth/request_token");
  oauthConfig.setAuthorizationUrl("http://www.tumblr.com/oauth/authorize");
  oauthConfig.setConsumerKey(tumblrKey);
  oauthConfig.setConsumerSecret(tumblrSecret);
  var requestData = {
    "method": "GET",
    "oAuthServiceName": "tumblr",
    "oAuthUseToken": "always"
  }
  var result = UrlFetchApp.fetch(
      "http://api.tumblr.com/v2/blog/frankocean.com/info",
      requestData);
    Logger.log(result.getContentText());
}
4

1 回答 1

-1

我对 OAuth 1.0a 也有同样的问题。

为了解决这个问题,我在 Firefox 中使用了 RestClient 插件来追踪原因。

问题原来是 requestData,OAuth 工作正常,但由于 requestData 错误,提取被拒绝。

[编辑]推特:

var requestData = {
  "method": "POST",
  "oAuthServiceName": "twitter",
  "oAuthUseToken": "always"
};

对于 QuickBooks:

var requestData = {
"method": "GET",
"oAuthServiceName": "QuickBooks",
"oAuthUseToken": "always"

};

于 2012-10-15T00:28:42.157 回答