我正在考虑将我对Google Drive的请求批量批量。Google Drive API举例说明了如何在Nodejs中批量的请求。但是,它使用异步并查找该方法告诉我,它一次是执行的,我尚不清楚它如何能够批次我的请求。
可以提供Google API调用。代码样本在下面。
var fileId = '1sTWaJ_j7PkjzaBWtNc3IzovK5hQf21FbOw9yLeeLPNQ';
var permissions = [
{
'type': 'user',
'role': 'writer',
'emailAddress': 'user@example.com'
}, {
'type': 'domain',
'role': 'writer',
'domain': 'example.com'
}
];
// Using the NPM module 'async'
async.eachSeries(permissions, function (permission, permissionCallback) {
drive.permissions.create({
resource: permission,
fileId: fileId,
fields: 'id',
}, function (err, res) {
if (err) {
// Handle error...
console.error(err);
permissionCallback(err);
} else {
console.log('Permission ID: ', res.id)
permissionCallback();
}
});
}, function (err) {
if (err) {
// Handle error
console.error(err);
} else {
// All permissions inserted
}
});
tl; dr-你不能。
查看他们的文档和其他示例,其他所有语言都有一个"批处理对象",将其添加到该对象。在他们的节点示例中没有什么。他们的JavaScript客户端具有.newBatch()
调用。
检查其Nodejs迁移指南(也从V2 API链接)。相关报价:
批量请求是1.0之前实验的。由于其不受欢迎和不稳定,我们已删除了1.0中对批处理请求的支持。
附带说明,批处理似乎只能购买带宽 - Google API仍然针对您的配额分别计数每个请求。