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