请等待第一个返回后再发送。
我向批处理添加了两个以上的请求并执行了它。并非所有权限都设置在Google Drive项目上。通常设置两个随机权限。
让我们假设我们有一个DriveService对象(gdService),一些Google Drive项目的ID (destThirdPartyId)和Permpermission类型对象的集合(permissionList)。
下面是演示问题的代码:
BatchRequest batchRequest = new BatchRequest(service_);
foreach (Permission perm in permissionList)
{
PermissionsResource.InsertRequest request = service_.Permissions.Insert(perm, destThirdPartyId);
batchRequest.Queue<InsertPermissionResponse>(request, null);
}
batchRequest.ExecuteAsync().Wait();
之后,只有少数请求在Google Drive端执行。但是分别执行相同的请求也可以:
foreach (Permission perm in permissionList)
{
PermissionsResource.InsertRequest request = service_.Permissions.Insert(perm, destThirdPartyId);
request.Execute();
}
这是一个已知问题。正如在权限更新文档中所说,当前不支持并发修改权限。