Alan maskeleri kullanma

Alan maskeleri, API çağrılarının bir istekte bulunması gereken alanları iade veya güncelleme yapmaktır. Bir FieldMask API'nin gereksiz işlerden kaçınmasını sağlar ve performansı artırır. Alan maskesi , Google Slaytlar API'deki hem okuma hem de güncelleme yöntemleri için kullanılır.

Alan maskesiyle oku

Sunumlar büyük olabilir ve genellikle sunumunuzun her kısmına ihtiyacınız olmaz. Presentation Bir okuma isteği tarafından döndürülen kaynak. Bir Slaytlar API yanıtı (fields URL parametresi kullanılarak). En iyisi için performans, yalnızca ihtiyacınız olan alanları açık bir şekilde listeleyin kullanıcı olabilir.

Alanlar parametresinin biçimi Bir FieldMask'in JSON kodlaması. Kısaca belirtmek gerekirse, birden fazla farklı alan virgülle ayrılmış, alt alanlar ise noktayla ayrılır. Alan adları, camelCase veya separated_by_underscores. Kolaylık sağlaması açısından aynı parantez içinde listelenebilir.

Aşağıdaki presentations.get istek örneği, yalnızca nesne kimliğini getirmek için slides.pageElements(objectId,size,transform), Size ve dönüştür pageElement nesne olarak ekleme:

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

Bu yöntem çağrısına verilen yanıt Presentation nesne alan maskesinde istenen bileşenleri içeren:

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

Alan maskesiyle güncelle

Bazen bir nesnedeki belirli alanları güncellemeniz gerekir. diğer alanlarda değişiklik yapılamaz. İstekleri bir presentations.batchUpdate işlemi, API'ye hangi alanların değiştirildiğini bildirmek için alan maskeleri kullanır. İlgili içeriği oluşturmak için kullanılan güncelleme isteği, alan maskesinde belirtilmeyen tüm alanları yoksayar, değerleri koruyabilmelidir.

Bir alanı, güncellenen mesajda belirtmeyerek de ayarını iptal edebilirsiniz. alanı maskeye ekliyorum. Bu işlem, alanda önceden elde etti.

Güncelleme alanı maskelerinin söz dizimi, okuma alanı maskeleriyle aynıdır.

Aşağıdaki örnekte UpdateShapePropertiesRequest bir şeklin renk dolgusunu DARK1 tema rengiyle değiştirin ve şeklin özet:

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