OAuth与Google App Engine和Google Apps Script集成问题

时间:2011-02-27 05:51:22

标签: google-app-engine oauth google-sheets google-apps-script

我正在尝试在Google电子表格中使用Google Apps脚本并遇到OAuth问题。

当我使用Google Apps for Business时,电子表格和Google App应用程序都受到Google提供的Oauth的保护。

以下是我正在使用的脚本。它给了我oauth舞,但没有调用URL并以302响应重新演绎。

不确定下一步该怎么做。尝试设置auth回调hadler和一切但没有走远。我也为密钥和秘密设置ScriptProperties(未在下面看到)。此外,未设置范围,因为App Engine指示OAuth适用于整个应用程序。

在Google App Engine告诉我应用程序正在请求访问之后,我在此结束时得到了302响应。它还表明appspot.com是外部提供商

var oAuthConfig = UrlFetchApp.addOAuthService("google");

oAuthConfig.setAccessTokenUrl("https://<blah>.appspot.com/_ah/OAuthGetAccessToken");

oAuthConfig.setRequestTokenUrl("https://<blah>.appspot.com/_ah/OAuthGetRequestToken");

oAuthConfig.setAuthorizationUrl("https://<blah>.appspot.com/_ah/OAuthAuthorizeToken?hd=<blah.com>");

oAuthConfig.setConsumerKey(consumer_key);

oAuthConfig.setConsumerSecret(consumer_secret);

var requestData = {
  "method": "GET",
  "oAuthServiceName": "google",
  "oAuthUseToken": "always"
};

var response = UrlFetchApp.fetch(url, requestData);

1 个答案:

答案 0 :(得分:0)

您不能在AppEngine api上使用consumerKey和consumerSecret。 AppEngine不是Google Apps for Business使用的授权/配置的一部分。尝试不使用它们并撤销已授予的权限或将名称(从“google”)更改为其他名称。