Firebase Remote Config-Trigger
Cloud Run-Funktionen können als Reaktion auf Änderungen in Firebase Remote Config im selben Google Cloud -Projekt wie die Funktion ausgelöst werden. So können Sie das Verhalten und die Darstellung Ihrer Anwendung ändern, ohne ein Anwendungsupdate veröffentlichen zu müssen.
Ereignistypen
Firebase Remote Config kann Funktionen als Reaktion auf das remoteconfig.update
-Ereignis auslösen.
Ereignistyp | Trigger |
---|---|
remoteconfig.update |
Wird ausgelöst, wenn die Remote Config-Vorlage aktualisiert wird. |
Ereignisstruktur
Ereignisdaten werden als transformiertes remoteConfig
-Objekt bereitgestellt.
Beispiel:
{ "updateType": "FORCED_UPDATE", "updateOrigin": "CONSOLE", "versionNumber": 1 }
Beispielcode
Node.js
Python
Go
Java
C#
using CloudNative.CloudEvents; using Google.Cloud.Functions.Framework; using Google.Events.Protobuf.Firebase.RemoteConfig.V1; using Microsoft.Extensions.Logging; using System.Threading; using System.Threading.Tasks; namespace FirebaseRemoteConfig; public class Function : ICloudEventFunction<RemoteConfigEventData> { private readonly ILogger _logger; public Function(ILogger<Function> logger) => _logger = logger; public Task HandleAsync(CloudEvent cloudEvent, RemoteConfigEventData data, CancellationToken cancellationToken) { _logger.LogInformation("Update type: {origin}", data.UpdateType); _logger.LogInformation("Update origin: {origin}", data.UpdateOrigin); _logger.LogInformation("Version number: {version}", data.VersionNumber); // In this example, we don't need to perform any asynchronous operations, so the // method doesn't need to be declared async. return Task.CompletedTask; } }
Ruby
PHP
use Google\CloudFunctions\CloudEvent; function firebaseRemoteConfig(CloudEvent $cloudevent) { $log = fopen(getenv('LOGGER_OUTPUT') ?: 'php://stderr', 'wb'); $data = $cloudevent->getData(); fwrite($log, 'Update type: ' . $data['updateType'] . PHP_EOL); fwrite($log, 'Origin: ' . $data['updateOrigin'] . PHP_EOL); fwrite($log, 'Version: ' . $data['versionNumber'] . PHP_EOL); }
Funktion bereitstellen
Zum Bereitstellen der Funktion müssen Sie den Ereignistyp google.firebase.remoteconfig.update
angeben.
Mit dem folgenden gcloud
-Befehl wird eine Funktion bereitgestellt, die durch ein Firebase Remote Config-Ereignis ausgelöst wird:
gcloud functions deploy FUNCTION_NAME \ --no-gen2 \ --entry-point ENTRY_POINT \ --trigger-event google.firebase.remoteconfig.update \ --runtime RUNTIME
Argument | Beschreibung |
---|---|
FUNCTION_NAME |
Der registrierte Name der Cloud Run Functions, die Sie bereitstellen.
Dies kann entweder der Name einer Funktion in Ihrem Quellcode oder ein beliebiger String sein. Wenn FUNCTION_NAME ein beliebiger String ist, müssen Sie das Flag --entry-point einfügen.
|
--entry-point ENTRY_POINT |
Der Name einer Funktion oder Klasse in Ihrem Quellcode. Optional, es sei denn, Sie haben FUNCTION_NAME nicht verwendet, um die Funktion in Ihrem Quellcode anzugeben, die während der Bereitstellung ausgeführt werden soll. In diesem Fall müssen Sie mit --entry-point den Namen der ausführbaren Funktion angeben.
|
--trigger-event google.firebase.remoteconfig.update |
Funktion bei Firebase Remote Config-Aktualisierungsereignissen auslösen |
--runtime RUNTIME |
Der Name der Laufzeit, die Sie verwenden. Eine vollständige Liste finden Sie in der gcloud -Referenz.
|