DocumentList API和GAS。如何嫁给他们?

时间:2012-05-14 13:43:04

标签: google-docs-api google-apps-script google-spreadsheet-api

如何使用此API?

developers.google.com/google-apps/documents-list

似乎可以访问修订历史记录Feed。

但是这些例子都在.NET中。如何在Google Apps脚本中应用/使用此API?任何人都知道如何并且可以解决一些问题也许一个简短的示例代码?

感谢。

2 个答案:

答案 0 :(得分:7)

您需要查看DocLists API的协议。您可以将此协议与URLFetch和Google oAuth一起使用 这是一个快速示例,它以json格式返回修订历史记录

//Get revison history
//resource_id is the id of the doc
function getRevisionHistory(resource_id){
  var scope = 'https://docs.google.com/feeds/';
  var fetchArgs = googleOAuth_('docs', scope);
  fetchArgs.method = 'GET';
  var url = scope + 'default/private/full/'+resource_id+'/revisions?v=3&alt=json';
  var urlFetch = UrlFetchApp.fetch(url, fetchArgs);
  var jsonFeed = Utilities.jsonParse(urlFetch.getContentText()).feed.entry;
  return jsonFeed
}

//Google oAuth
//Used by getRevisionHistory
function 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");
  oAuthConfig.setConsumerSecret("anonymous");
  return {oAuthServiceName:name, oAuthUseToken:"always"};
}

要使用DocsList API进行更多操作,您可以在我的Google网站上查看更多示例 https://sites.google.com/site/appsscripttutorial/urlfetch-and-oauth

答案 1 :(得分:0)

结帐:https://sites.google.com/site/scriptsexamples/custom-methods/driveservice  只需将源文件复制到您的文件中即可。

我将在接下来的几周内添加缺失的方法。 修订肯定在我的名单上。

您将能够使用以下库:  DOCS_LIST_API.GdocToFormat(docID,格式)

无需设置OAuth,它将内置。