您可以使用 Google 云端硬盘 Labels API 应用一组更新请求来更新单个标签,从而生成新的草稿修订版本。例如,您可以更新现有标签 Properties(基本标签说明),也可以向标签添加新的 Field。
标签更新充当批量更新,因为该方法会接受更新 Request 对象的列表。它会按照批处理请求中指定的相同顺序进行更新。批量更新中的更新以原子方式应用。也就是说,如果批次中的任何请求失败,则整个更新都会失败,并且不会应用任何(可能相关的)更改。标签保持不变。
如果更新成功,必须先发布生成的草稿修订版本,然后才能将更改用于任何 Google 云端硬盘项目。
更新标签对象
标签还包含许多其他可更新的对象类型,例如:
- 标签
Properties Field对象和字段类型- 选择
Choice和选择项Properties
这些对象只是众多控制标签外观和操作的对象中的一部分。
运营类别
labels 资源上 delta 方法支持的以下操作可大致分为以下几类:
| 类别 | 说明 |
|---|---|
| 创建 | 添加对象。 |
| 更新 | 更新对象的某些属性。 |
| 启用 | 启用对象。 |
| 停用 | 停用对象。 |
| 删除 | 移除对象。 |
下一部分将使用这些类别来描述特定操作的行为。
更新请求
delta 方法通过接受一个或多个 Request 对象来运行,每个对象都指定要执行的单个请求类型。请求有很多种。以下是按不同类别分组的请求类型细分。
字段掩码
许多“更新”和“停用”类型的请求都需要 FieldMask。这是一个以英文逗号分隔的列表,其中包含您要更新的字段,而其他字段保持不变。此掩码是必需的,可确保仅更新您要修改的字段。您必须至少指定一个字段。
示例
如需更新标签,请对 labels 资源使用 delta 方法。
您还必须指定:
useAdminAccess查询参数设置为true,以使用用户的管理员凭据。在允许访问之前,服务器会验证用户是否拥有所需的管理分类标签管理员权限。一个
Request,用于指定对标签的适用更新。通过
Properties对象获取的标签title。一个或多个
Field对象。一个
LabelView对象(作为LABEL_VIEW_FULL),用于设置应用于标签响应的资源视图。LABEL_VIEW_FULL会返回所有可能的字段。
以下代码示例展示了如何使用标签的 id 来更新正确的标签:
Python
body = {
'useAdminAccess': True,
'requests': [
{
'updateLabel': {
'properties': {
'title': 'TITLE'
},
'updateMask': 'title'
}
},
{
'createField': {
'field': {
'properties': {
'displayName': 'DISPLAY_NAME'
},
'textOptions': {}
}
}
}
],
'view': 'LABEL_VIEW_FULL'
}
response = service.labels().delta(
body=body,
name='labels/ID'
).execute()
Node.js
var body = {
'useAdminAccess': true,
'requests': [
{
'updateLabel': {
'properties': {
'title': 'TITLE'
},
'updateMask': 'title'
}
},
{
'createField': {
'field': {
'properties': {
'displayName': 'DISPLAY_NAME'
},
'textOptions': {}
}
}
}
],
'view': 'LABEL_VIEW_FULL'
};
service.labels.delta({
name: 'labels/ID',
requestBody: body
}, (err, res) => {
if (err) return console.error('The API returned an error: ' + err);
console.log(res);
});
替换以下内容:
- TITLE:标签的标题。
- DISPLAY_NAME:字段的显示名称。
- ID:标签的 ID。
系统会更新标签、字段或选项,递增标签的修订版本 ID,并将标签作为草稿标签存储在数据库中。标签的 State 为 PUBLISHED,且 hasUnpublishedChanges 设置为 true,这意味着存在草稿更改,但用户无法查看这些更改。更新后的标签必须为 PUBLISHED,然后更改才会对用户可见。如需了解详情,请参阅标签生命周期。