ใช้มาสก์ช่อง

มาสก์ช่องเป็นวิธีสำหรับการเรียก API ในการแสดงฟิลด์ที่คำขอ ส่งคืนหรืออัปเดต การใช้ FieldMask ทำให้ API หลีกเลี่ยงการทำงานที่ไม่จำเป็นและปรับปรุงประสิทธิภาพได้ ฟิลด์มาสก์ สำหรับทั้งวิธีการอ่านและอัปเดตใน Google สไลด์ API

อ่านด้วยฟิลด์มาสก์

งานนำเสนออาจมีขนาดใหญ่ ส่วนใหญ่แล้วคุณ ไม่จำเป็นต้องใช้ทุกส่วนของ Presentation ที่ส่งคืนโดยคำขออ่าน คุณสามารถจำกัดสิ่งที่แสดงผลใน การตอบกลับของ Slides API โดยใช้พารามิเตอร์ของ URL fields เพื่อประสิทธิภาพสูงสุด ด้านประสิทธิภาพ แสดงเฉพาะช่องที่จำเป็น ในการตอบกลับ

รูปแบบของพารามิเตอร์ช่องจะเหมือนกับ การเข้ารหัส JSON ของ FieldMask เราขออธิบายสั้นๆ ว่าช่องต่างๆ หลายช่องมีการคั่นด้วยคอมมาและช่องย่อย คั่นด้วยจุด คุณระบุชื่อช่องได้ใน camelCase หรือ separated_by_underscores เพื่อความสะดวก ฟิลด์ย่อยหลายฟิลด์จากฟิลด์เดียวกัน ประเภทแสดงไว้ในวงเล็บได้

presentations.getต่อไปนี้ ตัวอย่างคำขอใช้ฟิลด์มาสก์ของ slides.pageElements(objectId,size,transform) เพื่อดึงข้อมูลเฉพาะรหัสออบเจ็กต์ Size และ เปลี่ยนรูปแบบ จาก pageElement บนสไลด์ทั้งหมดในงานนำเสนอ:

GET https://slides.googleapis.com/v1/presentations/presentationId?fields=slides.pageElements(objectId,size,transform)

การตอบกลับการเรียกเมธอดนี้คือ ออบเจ็กต์ Presentation รายการ ที่มีคอมโพเนนต์ที่ขอในมาสก์ของช่อง:

{
  "slides": [
    {
      "pageElements": [
        {
          "objectId": "OBJECT_ID",
          "size": {
            "width": {
              "magnitude": 3000000,
              "unit": "EMU"
            },
            "height": {
              "magnitude": 3000000,
              "unit": "EMU"
            }
          },
          "transform": {
            "scaleX": 1,
            "scaleY": 1
            "translateX": 311708,
            "translateY": 744575,
            "unit": "EMU"
          }
        },
        {
          "objectId": "OBJECT_ID",
          "size": {
            "width": {
              "magnitude": 3000000,
              "unit": "EMU"
            },
            "height": {
              "magnitude": 3000000,
              "unit": "EMU"
            }
          },
          "transform": {
            "scaleX": 1,
            "scaleY": 1
            "translateX": 311700,
            "translateY": 2834125,
            "unit": "EMU"
          }
        }
     ]
    }
  ]
}

อัปเดตด้วยมาสก์ของช่อง

บางครั้งคุณต้องอัปเดตบางช่องในออบเจ็กต์เท่านั้นในขณะที่ออกจาก ช่องอื่นๆ ที่ไม่ได้เปลี่ยนแปลง อัปเดตคำขอภายใน presentations.batchUpdate การดำเนินการจะใช้ฟิลด์มาสก์เพื่อบอก API ว่าฟิลด์ใดที่มีการเปลี่ยนแปลง คำขออัปเดตจะไม่สนใจฟิลด์ที่ไม่ได้ระบุไว้ในฟิลด์มาสก์ และทิ้งค่าปัจจุบันไว้

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

ไวยากรณ์ของมาสก์ฟิลด์สำหรับอัปเดตจะเหมือนกับมาสก์ฟิลด์ที่อ่านแล้ว

ตัวอย่างต่อไปนี้ใช้ UpdateShapePropertiesRequest เพื่อเปลี่ยนสีของรูปร่างเป็นสีธีม DARK1 และยกเลิกการตั้งค่าของรูปร่าง โครงร่าง:

POST https://slides.googleapis.com/v1/presentations/presentationId:batchUpdate
{
  "requests": [
    {
      "updateShapeProperties": {
        "objectId": OBJECT_ID,
        "shapeProperties": {
          "shapeBackgroundFill": {
            "solidFill": {
              "color": {
                "themeColor": "DARK1"
              }
            }
          }
        },
        "fields": "shapeBackgroundFill.solidFill.color,outline"
      }
    }
  ]
}