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 Sheets API'de hem okuma hem de güncelleme yöntemleri için kullanılır.
Alan maskesiyle oku
Elektronik tablolar büyük olabilir ve genellikle
Spreadsheet
Bir okuma isteği tarafından döndürülen kaynak. Bir
E-Tablolar 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ğıdakiler
spreadsheets.get
isteği
örneği, bir URL'yi oluşturmak için sheets.properties(sheetId,title,sheetType,gridProperties)
alan maskesini
yalnızca sayfa kimliğini, başlığı ve
SheetType
ve
GridProperties
bir
SheetProperties
nesne olarak tanımlar:
GET https://sheets.googleapis.com/v4/spreadsheets/spreadsheetId?fields=sheets.properties(sheetId,title,sheetType,gridProperties)
Bu yöntem çağrısına verilen yanıt
Spreadsheet
alan maskesinde istenen bileşenleri içeren nesne. Lütfen
sheetType=OBJECT
, gridProperties
değerini içermiyor:
{ "sheets": [ { "properties": { "sheetId":SHEET_ID
, "title": "TITLE
", "sheetType": "GRID", "gridProperties": { "rowCount": 1000, "columnCount": 25 } } }, { "properties": { "sheetId":SHEET_ID
, "title": "TITLE
", "sheetType": "OBJECT" } } ] }
Alan maskesiyle güncelle
Bazen bir nesnedeki belirli alanları güncellemeniz gerekir.
diğer alanlarda değişiklik yapılamaz. İstekleri bir
spreadsheets.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
AddSheetRequest
Grid
türünde yeni bir sayfa eklemek, ilk satırı dondurmak ve yeni sayfayı renklendirmek
e-tablonun sekmesi kırmızı:
POST https://sheets.googleapis.com/v1/spreadsheets/spreadsheetId:batchUpdate
{ "spreadsheetId": "SPREADSHEET_ID
", "replies": [ { "addSheet": { "properties": { "sheetId":SHEET_ID
, "title": "TITLE
", "index": 6, "sheetType": "GRID", "gridProperties": { "rowCount": 1000, "columnCount": 26, "frozenRowCount": 1 }, "tabColor": { "red": 0.003921569 }, "tabColorStyle": { "rgbColor": { "red": 0.003921569 } } } } } ] }