2

Google スプレッドシートが Tumblr API v2 (Oauth 1.0a を使用) を照会することを承認するために、次の Google Apps Script 関数を作成しました。

コールバック 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 に答える