Menggunakan mask kolom

Mask kolom adalah cara bagi pemanggil API untuk mencantumkan kolom yang harus disediakan oleh permintaan kembalikan atau perbarui. Menggunakan FieldMask memungkinkan API menghindari pekerjaan yang tidak perlu dan meningkatkan performa. Mask kolom digunakan untuk metode baca dan update di Google Slides API.

Membaca dengan mask kolom

Presentasi bisa berukuran besar, dan sering kali Anda tidak memerlukan setiap bagian dari Presentation yang ditampilkan oleh permintaan baca. Anda dapat membatasi apa yang ditampilkan Respons Slides API, menggunakan parameter URL fields. Untuk yang terbaik kinerja, secara eksplisit mencantumkan hanya kolom yang Anda butuhkan dalam balasannya.

Format parameter kolom sama dengan Encoding JSON untuk FieldMask. Secara singkat, beberapa {i>field<i} yang berbeda dipisahkan dengan tanda koma dan sub-isian yang dipisahkan titik. Nama kolom dapat ditentukan dalam camelCase atau separated_by_underscores. Untuk memudahkan, beberapa sub-isian dari jenis huruf dapat dicantumkan dalam tanda kurung.

presentations.get berikut menggunakan mask kolom berupa slides.pageElements(objectId,size,transform) untuk mengambil ID objek saja, Size, dan transformasi dari pageElement pada semua {i>slide<i} dalam presentasi:

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

Respons terhadap panggilan metode ini adalah Objek Presentation berisi komponen yang diminta dalam mask kolom:

{
  "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"
          }
        }
     ]
    }
  ]
}

Memperbarui dengan mask kolom

Terkadang Anda hanya perlu memperbarui kolom tertentu dalam sebuah objek sambil tetap mempertahankan {i>field<i} lainnya tidak berubah. Permintaan pembaruan di dalam presentations.batchUpdate menggunakan mask kolom untuk memberi tahu API kolom mana yang sedang diubah. Tujuan permintaan update akan mengabaikan kolom apa pun yang tidak ditentukan dalam mask kolom, dan membiarkan mereka dengan nilai-nilai mereka saat ini.

Anda juga dapat membatalkan setelan kolom dengan tidak menentukannya di pesan yang diperbarui, tetapi menambahkan kolom ke mask. Ini akan menghapus nilai apa pun yang ada di {i>field<i} sebelumnya miliki.

Sintaksis untuk mask kolom update sama dengan mask kolom baca.

Contoh berikut menggunakan UpdateShapePropertiesRequest untuk mengubah isian warna bentuk menjadi warna tema DARK1 dan membatalkan setelan garis besar:

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"
      }
    }
  ]
}