使用OAuth从GAE应用下载CSV

时间:2014-02-28 08:47:35

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

我需要从我拥有的GAE应用程序下载通过OAuth提供的CSV。以下是Google Apps脚本:

function getFile(fileURL) {

  var oAuthConfig = UrlFetchApp.addOAuthService('google');  
  oAuthConfig.setAccessTokenUrl('https://my-app.appspot.com/_ah/OAuthGetAccessToken');  
  oAuthConfig.setRequestTokenUrl('https://my-app.appspot.com/_ah/OAuthGetRequestToken');  
  oAuthConfig.setAuthorizationUrl('https://my-app.appspot.com/_ah/OAuthAuthorizeToken'); 

  var options = {};
  options.method = 'GET';
  options.oAuthServiceName = 'google';
  options.oAuthUseToken = 'always';
  options.muteHttpExceptions = true

  var formattedDate = Utilities.formatDate(new Date(), "GMT", "yyyy-MM-dd");

  try {
    var fileURL = 'https://my-app.appspot.com/oauth/na/productusage';
    var response = UrlFetchApp.fetch(fileURL, options);
    Logger.log(response.getAllHeaders().toSource());
    Logger.log(response.getResponseCode());
    var fileBlob = response.getBlob();
    var folder = DocsList.getFolder('Download');
    var result = folder.createFile(fileBlob);
    result.rename('ProductUsage-' + formattedDate +'.csv');
  } catch (e) {
  Logger.log(e)

  }
}

我已经使用此脚本从同一个GAE应用下载另一个CSV文件,因此身份验证应该有效。但是在这种情况下,它不起作用,这是给定的错误: [14-02-27 17:20:20:120 CET]例外:无法对服务进行身份验证:google

我不明白为什么,如果我将fileURL从同一个GAE应用程序更改为另一个CSV文件,它正在下载。

更多信息:

  • 文件比另一个大:~6MB。
  • 我们拥有Google应用 业务。

0 个答案:

没有答案