Cloud Firestore インスタンスのカスタム構成を指定します。これらの変数は、他のメソッドを呼び出す前に設定する必要があります。
署名:
export declare interface FirestoreSettings
プロパティ
プロパティ | 型 | 説明 |
---|---|---|
cacheSizeBytes | 数値 | 注: このフィールドは、今後のメジャー リリースでは非推奨になります。代わりに cache フィールドを使用して、キャッシュ サイズやその他のキャッシュ構成を指定します。ディスク上のデータのおおよそのキャッシュ サイズのしきい値。キャッシュがこのサイズを超えると、Firestore は最近使用されていないデータの削除を開始します。このサイズは、キャッシュがそのサイズ未満に維持されることを保証するものではなく、キャッシュが指定されたサイズを超えた場合にのみクリーンアップが試行されるという保証はありません。デフォルト値は 40 MB です。しきい値は 1 MB 以上に設定する必要があります。CACHE_SIZE_UNLIMITED に設定すると、ガベージ コレクションを無効にできます。 |
experimentalAutoDetectLongPolling | ブール値 | ロング ポーリングを使用するかどうかを自動的に検出するように、SDK の基盤となるトランスポート(WebChannel)を構成します。これは experimentalForceLongPolling とよく似ていますが、必要な場合にのみロング ポーリングを使用します。2019 年の導入以来、この設定のデフォルト値は false でしたが、Firebase JavaScript SDK の v9.22.0 では、この設定のデフォルト値は 2023 年 5 月に true に変更されました。つまり、ロング ポーリングの自動検出がデフォルトで有効になりました。無効にするには、この設定を false に設定し、GitHub の Issue を開いて、ロング ポーリングの自動検出を無効にした問題の原因を共有してください。この設定は Node.js 環境では使用できません。 |
experimentalForceLongPolling | ブール値 | SDK の基盤となるネットワーク トランスポート(WebChannel)でロング ポーリングを強制的に使用します。バックエンドからの各レスポンスは、バックエンドがデータを送信するとすぐに閉じられます(デフォルトでは、バックエンドに送信するデータが多い場合に備えてレスポンスは開いたままになります)。これにより、トラフィックを無期限に誤ってバッファリングする特定のプロキシやウイルス対策ソフトウェアなどとの互換性の問題を回避できます。ただし、このオプションを使用するとパフォーマンスが低下します。この設定は experimentalAutoDetectLongPolling では使用できないため、今後のリリースで削除される可能性があります。この機能を使用してネットワークの信頼性に関する特定の問題を回避する場合は、https://github.com/firebase/firebase-js-sdk/issues/1674 でお知らせください。この設定は Node.js 環境では使用できません。 |
experimentalLongPollingOptions | ExperimentalLongPollingOptions | ロング ポーリングが使用されている場合に、SDK の基盤となるネットワーク トランスポート(WebChannel)を構成するオプション。これらのオプションは、experimentalForceLongPolling が true の場合、または experimentalAutoDetectLongPolling が true であり、自動検出によってロング ポーリングが必要と判断された場合にのみ使用できます。それ以外の場合、これらのオプションは無視されます。 |
ホスト | 文字列 | 接続先のホスト名。 |
ignoreUndefinedProperties | ブール値 | オブジェクトのシリアル化時に undefined に設定されたネストされたプロパティをスキップするかどうか。true に設定すると、これらのプロパティはスキップされ、Firestore には書き込まれません。false に設定するか省略した場合、SDK は undefined 型のプロパティを検出したときに例外をスローします。 |
localCache | FirestoreLocalCache | SDK で使用されるキャッシュを指定します。使用できるオプションは MemoryLocalCache と PersistentLocalCache で、それぞれに異なる構成オプションがあります。指定しない場合、デフォルトで MemoryLocalCache が使用されます。注: このフィールドと cacheSizeBytes を同時に設定すると、SDK の初期化中に例外がスローされます。代わりに、FirestoreLocalCache オブジェクトの構成を使用してキャッシュ サイズを指定します。 |
SSL | ブール値 | 接続時に SSL を使用するかどうか。 |
FirestoreSettings.cacheSizeBytes
注: このフィールドは、今後のメジャー リリースでは非推奨になります。キャッシュ サイズやその他のキャッシュ構成を指定するには、代わりに cache
フィールドを使用してください。
ディスク上のデータのおおよそのキャッシュ サイズのしきい値。キャッシュがこのサイズを超えると、Firestore は最近使用されていないデータの削除を開始します。このサイズは、キャッシュがそのサイズ未満に維持されることを保証するものではなく、キャッシュが指定されたサイズを超えた場合にのみクリーンアップが試行されるという保証はありません。
デフォルト値は 40 MB です。しきい値は 1 MB 以上に設定する必要があります。CACHE_SIZE_UNLIMITED
に設定すると、ガベージ コレクションを無効にできます。
署名:
cacheSizeBytes?: number;
FirestoreSettings.experimentalAutoDetectLongPolling
ロング ポーリングを使用するかどうかを自動的に検出するように、SDK の基盤となるトランスポート(WebChannel)を構成します。これは experimentalForceLongPolling
とよく似ていますが、必要な場合にのみロング ポーリングを使用します。
この設定のデフォルト値は、2019 年の導入以来、false
でしたが、Firebase JavaScript SDK v9.22.0 では 2023 年 5 月に true
に変更されました。つまり、ロング ポーリングの自動検出がデフォルトで有効になりました。無効にするには、この設定を false
に設定し、GitHub の問題をオープンして、ロング ポーリングの自動検出を無効にした原因となった問題を共有してください。
この設定は Node.js 環境では使用できません。
署名:
experimentalAutoDetectLongPolling?: boolean;
FirestoreSettings.experimentalForceLongPolling
SDK の基盤となるネットワーク トランスポート(WebChannel)でロング ポーリングを強制的に使用します。バックエンドからの各レスポンスは、バックエンドがデータを送信するとすぐに閉じられます(デフォルトでは、バックエンドに送信するデータが多い場合に備えてレスポンスは開いたままになります)。これにより、トラフィックを無期限に誤ってバッファリングする特定のプロキシやウイルス対策ソフトウェアなどとの互換性の問題を回避できます。ただし、このオプションを使用するとパフォーマンスが若干低下します。
この設定は experimentalAutoDetectLongPolling
では使用できないため、今後のリリースで削除される可能性があります。特定のネットワーク信頼性の問題の回避にこのツールを使用している場合は、https://github.com/firebase/firebase-js-sdk/issues/1674 でお知らせください。
この設定は Node.js 環境では使用できません。
署名:
experimentalForceLongPolling?: boolean;
FirestoreSettings.experimentalLongPollingOptions
ロング ポーリングを使用する場合に、SDK の基盤となるネットワーク トランスポート(WebChannel)を構成するオプション。
これらのオプションは、experimentalForceLongPolling
が true の場合、または experimentalAutoDetectLongPolling
が true であり、自動検出によってロング ポーリングが必要と判断された場合にのみ使用されます。それ以外の場合、これらのオプションは無視されます。
署名:
experimentalLongPollingOptions?: ExperimentalLongPollingOptions;
FirestoreSettings.host
接続先のホスト名。
署名:
host?: string;
FirestoreSettings.ignoreUndefinedProperties
オブジェクトのシリアル化時に undefined
に設定されたネストされたプロパティをスキップするかどうか。true
に設定すると、これらのプロパティはスキップされ、Firestore には書き込まれません。false
に設定するか省略した場合、undefined
型のプロパティを検出したときに SDK から例外がスローされます。
署名:
ignoreUndefinedProperties?: boolean;
FirestoreSettings.localCache
SDK で使用されるキャッシュを指定します。使用可能なオプションは MemoryLocalCache
と PersistentLocalCache
で、それぞれに異なる構成オプションがあります。
指定しない場合、デフォルトで MemoryLocalCache
が使用されます。
注: このフィールドと cacheSizeBytes
を同時に設定すると、SDK の初期化中に例外がスローされます。代わりに、FirestoreLocalCache
オブジェクトの構成を使用してキャッシュ サイズを指定します。
署名:
localCache?: FirestoreLocalCache;
FirestoreSettings.ssl
接続時に SSL を使用するかどうか。
署名:
ssl?: boolean;