【发布时间】:2012-07-19 08:33:25
【问题描述】:
我可以得到 GAS 和 GAE 之间的 Oauth 连接。
我构建了一个 Google 小工具,它需要来自我的数据存储应用程序的一些数据,它有 3 个端点来最终获取访问令牌。
http//[myapp].appspot.com/_ah/OAuthGetRequestToken
http//[myapp].appspot.com/_ah/OAuthAuthorizeToken
http//[myapp].appspot.com/_ah/OAuthGetAccessToken
在 GAS 方面,我有获取访问令牌的典型功能。
function oauthTokenFetch(){
var oAuthConfig = UrlFetchApp.addOAuthService("myAppName");
oAuthConfig.setAccessTokenUrl("https://<myApp>appspot.com/_ah/OAuthGetAccessToken");
oAuthConfig.setRequestTokenUrl("https://<myApp>.appspot.com/_ah/OAuthGetRequestToken");
oAuthConfig.setAuthorizationUrl("https://<myApp>.appspot.com/_ah/OAuthAuthorizeToken");
oAuthConfig.setConsumerKey("<myApp>.appspot.com");
oAuthConfig.setConsumerSecret("myConsumerSecret");
var requestData = {
"method": "GET",
"oAuthServiceName": "myAppName",
"oAuthUseToken": "always"
};
try {
var response2=UrlFetchApp.fetch("http://<myApp>.appspot.com/test/oauth",requestData);
Logger.log(response2.getResponseCode());
}catch(exception){
Logger.log(exception);
}
如果我撤销了谷歌账户上的访问令牌,它就无法获得另一个,授予授权的弹出窗口不会出现......我必须复制谷歌小工具并再次进行授权。
有人有解决方案吗?
【问题讨论】:
-
你不应该在 javascript 文件中传递秘密,世界上的每个人都可以访问它。
标签: google-app-engine oauth-2.0 google-apps-script