0

我有一个脚本,可以将 Google Doc 转换为 Blogger 帖子(沿途将图像保存到 Picasa)...我使用了 PicasaApp 库。

我想以“用户访问网络应用程序”的身份运行该应用程序,以便人们可以在他们的文档和博客中使用它。

它对我来说很好,但总是返回“执行该操作需要授权”。与另一个谷歌帐户一起使用时。

我有一个运行测试代码的函数,用于通过 API 与 DocList、PicasaApp 和 Blogger 对话。他们都强迫我,作者进行身份验证,并且效果很好。我什至尝试将 googleOAuth_ 的名称更改为 my_googleOAuth(见下文),以防它与 PicasaApp 中的 googleOAuth_ 发生冲突。

function my_googleOAuth(name,scope) {
      var oAuthConfig = UrlFetchApp.addOAuthService(name);
    oAuthConfig.setRequestTokenUrl("https://www.google.com/accounts/OAuthGetRequestToken?scope="+scope);
      oAuthConfig.setAuthorizationUrl("https://www.google.com/accounts/OAuthAuthorizeToken");
      oAuthConfig.setAccessTokenUrl("https://www.google.com/accounts/OAuthGetAccessToken");
    oAuthConfig.setConsumerKey("anonymous"); // Client ID:
    oAuthConfig.setConsumerSecret("anonymous"); //Client secret
    return {oAuthServiceName:name, oAuthUseToken:"always"};
}

这真的让我发疯,而且似乎在任何地方都没有明确的答案。我已经完成了十几种不同的编辑/保存/运行循环。

4

1 回答 1

1

不幸的是,这是对 UrlFetch/OAuth1 授权有效用户的已知限制,并且在问题跟踪器上有一个开放的功能请求。

您可以做的是在此处手动执行 OAuth 2 流程并将令牌自己存储在UserProperties. 这是一些示例 OAuth2 代码,您需要在developers.google.com/console创建您的 OAuth2 客户端 ID/密码

于 2013-05-05T20:09:14.903 回答