Google is committed to advancing racial equity for Black communities. See how.
Ta strona została przetłumaczona przez Cloud Translation API.
Switch to English

Szablony zdalnej konfiguracji i przechowywanie wersji

Szablon Zdalnej konfiguracji to zestaw parametrów i warunków w formacie JSON utworzony po stronie serwera dla projektu Firebase. Możesz modyfikować szablon i zarządzać nim za pomocą konsoli Firebase, która wyświetla zawartość szablonu w formacie graficznym na kartach Parametry i Warunki . Możesz także użyć interfejsów API zaplecza Remote Config do modyfikowania konfiguracji i zarządzania nią.

Oto przykład pliku szablonu:

  {
    "conditions": [
      {
        "name": "ios",
        "expression": "device.os == 'ios'"
      }
    ],
    "parameters": {
      "welcome_message": {
        "defaultValue": {
          "value": "Welcome to this sample app"
        },
        "conditionalValues": {
          "ios": {
            "value": "Welcome to this sample iOS app"
          }
        }
      },
      "welcome_message_caps": {
        "defaultValue": {
          "value": "false"
        }
      },
      "header_text": {
        "defaultValue": {
          "useInAppDefault": true
        }
      }
    },
    "version": {
      "versionNumber": "28",
      "updateTime": "2020-05-14T18:39:38.994Z",
      "updateUser": {
        "email": "user@google.com"
      },
      "updateOrigin": "CONSOLE",
      "updateType": "INCREMENTAL_UPDATE"
    }
  }

Za każdym razem, gdy aktualizujesz parametry, Remote Config tworzy nowy wersjonowany szablon Remote Config i przechowuje poprzedni szablon jako wersję, którą możesz w razie potrzeby pobrać lub przywrócić. Numery wersji są zwiększane sekwencyjnie od wartości początkowej przechowywanej przez Remote Config. Wszystkie szablony zawierają pole version jak pokazano, zawierające metadane dotyczące tej konkretnej wersji.

Za pomocą konsoli Firebase lub interfejsów API zaplecza Remote Config możesz wykonać następujące zadania zarządzania wersjami:

  • Wyświetl wszystkie zapisane wersje szablonów
  • Pobierz określoną wersję
  • Wróć do określonej wersji

Zarządzając szablonami Remote Config, pamiętaj o progu wygaśnięcia: 90 dni od czasu utworzenia lub łączny limit 300 przechowywanych wersji. Jeśli chcesz zapisać lub przywrócić szablon poza tymi limitami, zapisz i zapisz go ręcznie. Bieżący aktywny szablon Zdalnej konfiguracji używany przez Twoją aplikację nie wygasa; jeśli jednak był aktywny przez ponad 90 dni od utworzenia i został zastąpiony aktualizacją, nie można go ponownie odzyskać (z powodu wygaśnięcia).

Zarządzaj wersjami szablonów Zdalnej konfiguracji za pomocą konsoli Firebase

Konsola Firebase zapewnia interfejs graficzny, który umożliwia wyświetlanie listy wersji szablonów, przeglądanie ich szczegółów i cofanie w razie potrzeby. Aby wykonać te zadania:

  1. Na karcie Parametry wybierz ikonę „zegara” wyświetlaną w prawym górnym rogu. Spowoduje to otwarcie strony Historia zmian z listą wszystkich zapisanych wersji szablonów w menu listy po prawej stronie.

  2. Domyślnie panel szczegółów wyświetla bieżący aktywny szablon. Aby wyświetlić szczegóły innej wersji na liście, wybierz ją z prawego menu.

    Szczegóły wyświetlane dla każdej przechowywanej wersji obejmują informacje o tym, czy zmiany pochodzą z konsoli, z REST API, z wycofania, czy też były to zmiany przyrostowe wynikające z wymuszonego zapisania szablonu.

  3. Możesz wyświetlić szczegółowe różnice między aktualnie wybraną wersją a każdą inną zapisaną wersją, najeżdżając kursorem na menu kontekstowe dowolnej niewybranej wersji i wybierając opcję Porównaj z wybraną wersją.

  4. W przypadku poprzednich wersji szablonów kwalifikujących się do przywrócenia, przycisk opcji umożliwiający powrót do tej wersji jest wyświetlany w prawym górnym rogu strony. Kliknij i potwierdź to tylko wtedy, gdy masz pewność, że chcesz przywrócić tę wersję i natychmiast użyć tych wartości dla wszystkich aplikacji i użytkowników.

Zarządzaj wersjami szablonów Zdalnej konfiguracji za pomocą wewnętrznych interfejsów API

W tej sekcji opisano, jak zarządzać wersjami szablonu Remote Config przy użyciu REST API i Firebase Admin SDK. Aby uzyskać więcej szczegółowych informacji na temat programowego tworzenia, modyfikowania i zapisywania szablonów, zobacz programowe modyfikowanie zdalnej konfiguracji .

Wyświetl wszystkie zapisane wersje szablonu Zdalnej konfiguracji

Dzięki interfejsom API zaplecza Remote Config można pobrać listę wszystkich przechowywanych wersji szablonu Remote Config. Na przykład:

Node.js

function listAllVersions() {
  admin.remoteConfig().listVersions()
    .then((listVersionsResult) => {
      console.log("Successfully fetched the list of versions");
      listVersionsResult.versions.forEach((version) => {
        console.log('version', JSON.stringify(version));
      });
    })
    .catch((error) => {
      console.log(error);
    });
}

ODPOCZYNEK

curl --compressed -D headers -H "Authorization: Bearer <var>token</var>" -X GET https://firebaseremoteconfig.googleapis.com/v1/projects/<var>my-project-id</var>:listVersions

Odpowiedź zawiera metadane dla wszystkich przechowywanych wersji, w tym czas aktualizacji, użytkownika, który ją wykonał i czy została wykonana za pośrednictwem konsoli, czy REST API. Oto przykład elementu wersji:

{
  "versions": [{
    "version_number": "6",
    "update_time": "2018-05-12T02:38:54Z",
    "update_user": {
      "email": "jane@developer.org",
    },
    "description": "One small change on the console",
    "origin": "CONSOLE",
    "update_type": "INCREMENTAL_UPDATE"
  }]

Pobierz określoną wersję szablonu Zdalnej konfiguracji

Dzięki interfejsom API zaplecza Remote Config można pobrać dowolną przechowywaną wersję szablonu Remote Config. Przekaż getTemplate() bez żadnych argumentów, aby pobrać najnowszą wersję szablonu lub aby pobrać określoną wersję, użyj getTemplateAtVersion() . Na przykład:

Node.js

// Get template version: 6
admin.remoteConfig().getTemplateAtVersion('6')
  .then((template) => {
    console.log("Successfully fetched the template with ETag: " + template.etag);
  })
  .catch((error) => {
    console.log(error);
  });

ODPOCZYNEK

curl --compressed -D headers -H "Authorization: Bearer <var>token</var>" -X GET https://firebaseremoteconfig.googleapis.com/v1/projects/<var>my-project-id</var>/remoteConfig?version_number=6</pre>

Parametr adresu URL ?version_number jest ważny tylko w przypadku operacji GET ; nie można go użyć do określenia numerów wersji aktualizacji. Podobne żądanie get bez parametru ?version_number bieżący aktywny szablon.

Przywróć określoną przechowywaną wersję szablonu zdalnej konfiguracji

Dzięki interfejsom API zaplecza Remote Config można przywrócić dowolną przechowywaną wersję szablonu. Na przykład:

Node.js

// Roll back to template version: 6
admin.remoteConfig().rollback('6')
  .then((template) => {
    console.log("Successfully rolled back to template version 6.");
    console.log("New ETag: " + template.etag);
  })
  .catch((error) => {
    console.log('Error trying to rollback:', e);
  })

ODPOCZYNEK

Aby przywrócić zapisany szablon zdalnej konfiguracji, przeprowadź HTTP POST z metodą niestandardową :rollback i w treści żądania określ konkretną wersję do zastosowania. Na przykład:

curl --compressed -D headers -H "Authorization: Bearer <var>token</var>" -X POST https://firebaseremoteconfig.googleapis.com/v1/projects/<var>my-project-id</var>/remoteConfig:rollback -d '{"version_number": 6}'</pre>

Odpowiedź zawiera zawartość już aktywnego przechowywanego szablonu wraz z metadanymi nowej wersji.

Należy zauważyć, że ta operacja wycofywania zmian skutecznie tworzy nową numerowaną wersję. Na przykład, cofnięcie z wersji 10 do wersji 6 skutecznie tworzy nową kopię wersji 6, różniącą się od oryginału tylko tym, że jej numer wersji to 11. Oryginalna wersja 6 jest nadal przechowywana, zakładając, że nie upłynęła jej data ważności oraz wersja 11 staje się aktywnym szablonem.