นำป้ายกำกับออกจากไฟล์

หน้านี้จะอธิบายวิธีนำป้ายกำกับออกจากไฟล์ Google ไดรฟ์ไฟล์เดียว

หากต้องการนำข้อมูลเมตาของป้ายกำกับไฟล์ออกจากไฟล์ ให้ใช้ files.modifyLabels เนื้อหาคำขอ มีอินสแตนซ์ของ ModifyLabelsRequest เพื่อแก้ไขชุดป้ายกำกับในไฟล์ คำขออาจมี การเปลี่ยนแปลงต่างๆ ที่นำไปใช้ในอะตอม กล่าวคือ หากการแก้ไขใดไม่ได้รับ การอัปเดตทั้งหมดนั้นไม่สำเร็จ และไม่มีสิ่งใดเลย ( ขึ้นต่อกัน) การเปลี่ยนแปลงจะถูกนำไปใช้

ModifyLabelsRequest มีอินสแตนซ์ของ LabelModification ซึ่งเป็นการแก้ไขป้ายกำกับในไฟล์ และอาจมีอินสแตนซ์ จาก FieldModification ซึ่งเป็นการแก้ไขช่องของป้ายกำกับ หากต้องการนำป้ายกำกับออกจากไฟล์ ให้ทำดังนี้ ตั้งค่า FieldModification.removeLabel เป็น True

ถ้าสำเร็จ การตอบกลับ เนื้อหาประกอบด้วย ป้ายกำกับที่เพิ่มหรืออัปเดตตามคำขอ ซึ่งมีอยู่ใน ออบเจ็กต์ modifiedLabels ประเภท Label

ตัวอย่าง

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ labelId เพื่อนำช่องทั้งหมดออก ที่เชื่อมโยงกับป้ายกำกับโดยใช้ fileId ตัวอย่างเช่น หากป้ายกำกับมี ทั้งช่องข้อความและผู้ใช้ การนำป้ายกำกับออกจะเป็นการลบทั้งข้อความและผู้ใช้ ที่เชื่อมโยงกับป้ายกำกับ แต่การเลิกตั้งค่าช่องข้อความจะเป็นการลบ จากป้ายกำกับ แต่ไม่ต้องเปลี่ยนแปลงช่องผู้ใช้ สำหรับข้อมูลเพิ่มเติม โปรดดู ยกเลิกการตั้งค่าช่องป้ายกำกับในไฟล์

Java

ModifyLabelsRequest modifyLabelsRequest =
  new ModifyLabelsRequest()
      .setLabelModifications(
          ImmutableList.of(
              new LabelModification()
                .setLabelId("LABEL_ID")
                .setRemoveLabel(true)));

ModifyLabelsResponse modifyLabelsResponse = driveService.files().modifyLabels("FILE_ID", modifyLabelsRequest).execute();

Python

label_modification = {'labelId':'LABEL_ID', 'removeLabel': True]}

modified_labels = drive_service.files().modifyLabels(fileId="FILE_ID", body = {'labelModifications' : [label_modification]}).execute();

Node.js

/**
* Remove a label on a Drive file
* @return{obj} updated label data
**/
async function removeLabel() {
  // Get credentials and build service
  // TODO (developer) - Use appropriate auth mechanism for your app

  const {GoogleAuth} = require('google-auth-library');
  const {google} = require('googleapis');

  const auth = new GoogleAuth({scopes: 'https://www.googleapis.com/auth/drive'});
  const service = google.drive({version: 'v3', auth});
  const labelModification = {
    'labelId': 'LABEL_ID',
    'removeLabel': True,
  };
  const labelModificationRequest = {
    'labelModifications': [labelModification],
  };
  try {
    const updateResponse = await service.files.modifyLabels({
      fileId: 'FILE_ID',
      resource: labelModificationRequest,
    });
    return updateResponse;
  } catch (err) {
    // TODO (developer) - Handle error
    throw err;
  }

แทนที่ค่าต่อไปนี้

  • LABEL_ID: labelId ของป้ายกำกับที่จะแก้ไข หากต้องการค้นหา ป้ายกำกับในไฟล์ ให้ใช้ files.listLabels
  • FILE_ID: fileId ของไฟล์ที่มีป้ายกำกับ แก้ไขแล้ว