0

我使用 Google 电子表格 API 将文档从一个帐户复制到另一个帐户,然后我想返回新创建的电子表格的密钥。

复制是通过检索模板电子表格,创建一个新的,SpreadsheetEntry newDoc = new SpreadsheetEntry();然后将id新的设置为模板电子表格来完成的newDoc.setId(template.getId());。然后我插入新的电子表格

newDoc = service.insert(new URL("https://docs.google.com/feeds/default/private/full"), newDoc);

我想向调用者返回两件事:链接到新创建的电子表格及其密钥。我第一次通过newDoc.getSpreadsheetLink().getHref();并返回https://docs.google.com/a/bridgeworks.nl/spreadsheet/ccc?key=0Asl_Vu_YG4J-dDc5NHpwTFVRZFNiVENnRUxOb21XLVE

然后我打电话newDoc.getKey();,它返回spreadsheet%3A0Asl_Vu_YG4J-dDc5NHpwTFVRZFNiVENnRUxOb21XLVE

key 前面似乎有spreadsheet%3A. 但为什么?我可以安全地移除它并只归还钥匙吗?

如果我使用

URL worksheetUrl = urlFactory.getWorksheetFeedUrl("0Asl_Vu_YG4J-dDc5NHpwTFVRZFNiVENnRUxOb21XLVE", "private", "full");

它成功了,但是

URL worksheetUrl = urlFactory.getWorksheetFeedUrl("spreadsheet%3A0Asl_Vu_YG4J-dDc5NHpwTFVRZFNiVENnRUxOb21XLVE", "private", "full");

失败

4

1 回答 1

1

Documents List API 定义了两种类型的 ID:资源 ID 和无类型资源 ID。前者的格式是 [type]:[id],而后者只是 [id]:

https://developers.google.com/google-apps/documents-list/#terminology_used_in_this_guide

您可以安全地从类型化的资源 ID 中删除 [type] 部分以获取未类型化的资源 ID。

于 2012-08-22T16:41:26.583 回答