问题描述
||
我正在尝试获取Google文档中现有文档的修订供稿(实际上,我只需要修订计数)。我使用下面的代码并获得
GDataRequestException
。内部异常是404,而响应字符串是(文档ID被截断):
<errors xmlns=\'http://schemas.google.com/g/2005\'>
<error>
<domain>GData</domain>
<code>ResourceNotFoundException</code>
<internalReason>Invalid document id: file:0BxwzFL2fD0</internalReason>
</error>
</errors>
这是代码:
var documentsService = new DocumentsService(\"myappname\");
documentsService.SetAuthenticationToken(token);
var uri = string.Format(\"https://docs.google.com/Feeds/default/private/full/{0}/revisions\",Uri.EscapeDataString(resourceId));
var query = new DocumentsListQuery(uri);
var Feed = documentsService.Query(query);
解决方法
您正在使用的resourceId似乎无效。
代替手动构造uri,您应该使用要检索以下版本的DocumentEntry实例的RevisionDocument属性:
var uri = entry.RevisionDocument;
, var documentsRequest = new DocumentsRequest();
// ... do any authentication here..
var revisions = documentsRequest.Get<Google.Documents.Document>(entry.RevisionDocument).Entries;