我使用Google Spreadsheet API将文档从一个帐户复制到另一个帐户,然后我想返回新创建的电子表格的键。SpreadsheetEntry.getKey()返回以'电子表格%3A'开头的键
的拷贝被检索的电子表格模板,创建一个新的使用SpreadsheetEntry newDoc = new SpreadsheetEntry();
然后设定一个新的电子表格模板newDoc.setId(template.getId());
的id
完成。然后,我将新的电子表格
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
的关键似乎是spreadsheet%3A
之前。但为什么?我可以安全地移除它并只返回密钥吗?
如果我使用
URL worksheetUrl = urlFactory.getWorksheetFeedUrl("0Asl_Vu_YG4J-dDc5NHpwTFVRZFNiVENnRUxOb21XLVE", "private", "full");
它成功,但
URL worksheetUrl = urlFactory.getWorksheetFeedUrl("spreadsheet%3A0Asl_Vu_YG4J-dDc5NHpwTFVRZFNiVENnRUxOb21XLVE", "private", "full");
失败
不够公平。谢谢。 –