0

GoogleAppsAPIを使用するよりもiPhoneアプリを開発しています。

Googleドキュメントのすべてのドキュメントを取得していて、各ドキュメントのACLを取得したいと思います。私はこれを呼び出すことによってこれを行うことができます:

[service fetchFeedWithURL:entry.ACLFeedLink.URL completionHandler:^(GDataServiceTicket *ticket, GDataFeedBase *ACLFeed, NSError *error){            
}];

ただし、ドキュメントごとにACLが必要なため、これには多くのリクエストが必要になります。代わりにバッチ操作を使用してそれを行うことはできますか?

私は以下を試しました:

GDataFeedBase *batchFeed = [[GDataFeedBase alloc] init];
NSURL *batchUrl = [[feed batchLink] URL];

GDataBatchOperation *batchOperation = [GDataBatchOperation batchOperationWithType:kGDataBatchOperationQuery];
[batchFeed setBatchOperation:batchOperation];

GDataEntryBase *entryACL = [[GDataEntryBase alloc] init];
[entryACL setIdentifier:[[[[feed entries] objectAtIndex:0] ACLFeedLink] href]];
[batchFeed addEntryWithEntry:entryACL];

[service fetchFeedWithBatchFeed:batchFeed forBatchFeedURL:batchUrl completionHandler:^(GDataServiceTicket *ticket, GDataFeedBase *feed, NSError *error){
}];

しかし、それは機能しません。ACLフィードではなく、実際のドキュメントのみを取得します。

誰か助けてもらえますか?ありがとう。

4

1 に答える 1

1

ACLバッチ処理は、単一のリソース上の複数のACLに対してのみ実行できるため、これは役に立ちません。

ACLのフェッチにさらに役立つアプローチはexpand-acl、GETでクエリパラメータを使用することです。例:

GET https://docs.google.com/feeds/default/private/full/?v=3&expand-acl=true
于 2012-04-30T16:51:54.560 に答える