Bir işlevi şuna yanıt olarak tetikleyebilirsiniz: Aşağıdakiler dahil Firebase Remote Config etkinlikleri yeni bir yapılandırma sürümünün yayınlanması veya eski sürüme geri dönmesi. Bu kılavuzda, Remote Config arka plan işlevinin nasıl oluşturulacağı açıklanmaktadır. arasında bir fark vardır.
Remote Config işlevini tetikleyin
Remote Config etkinlikleri için bir işleyici tanımlamak üzere
functions.remoteConfig
modülünün onUpdate()
işlevine geçiş yapın.
Döndürülen TemplateVersion
nesnesi:
onUpdate
, anahtar meta verilerini içeriyor
alanları oluşturabilirsiniz.
Ayrıca, güncellemeyi yapan kullanıcının e-postasını, adıyla birlikte
ve varsa bir resim.
Aşağıda,
her güncellenmiş sürümün ve değiştirildiği sürümün farkını döndürür. İşlev
şablon nesnesinin versionNumber
alanını inceler ve
bir numarası daha düşük olan mevcut (yeni güncellenmiş) sürümle birlikte:
exports.showConfigDiff = functions.remoteConfig.onUpdate(versionMetadata => { return admin.credential.applicationDefault().getAccessToken() .then(accessTokenObj => { return accessTokenObj.access_token; }) .then(accessToken => { const currentVersion = versionMetadata.versionNumber; const templatePromises = []; templatePromises.push(getTemplate(currentVersion, accessToken)); templatePromises.push(getTemplate(currentVersion - 1, accessToken)); return Promise.all(templatePromises); }) .then(results => { const currentTemplate = results[0]; const previousTemplate = results[1]; const diff = jsonDiff.diffString(previousTemplate, currentTemplate); functions.logger.log(diff); return null; }).catch(error => { functions.logger.error(error); return null; }); });
Bu örnekte json-diff
ve
request-promise
modülünde
farkı oluşturun ve şablon nesnesini almak için isteği oluşturun. Örnek için
Firebase Cloud Messaging'in yanı sıra Remote Config istemci mantığını içeren
Remote Config güncellemelerini gerçek zamanlı olarak yayma başlıklı makaleyi inceleyin.