Google cloud firestore 除非强制,否则禁用特定集合的firebase同步

Google cloud firestore 除非强制,否则禁用特定集合的firebase同步,google-cloud-firestore,Google Cloud Firestore,加载特定firebase集合后,如何禁用其同步?除非强制执行,否则不应再次检查服务器 假设我有一个用户集合。我只想在用户登录时从服务器读取用户值。在用户注销并再次登录之前,我不希望更新用户集合的值 有办法吗?无法“禁用”特定集合上的同步。SDK将始终以相同的行为同步所有内容。如果只想加载一次数据,则需要编写一些代码来处理这种情况。你可以: 仅对服务器查询一次,然后将结果存储到另一个本地数据库中进行查询,而无需再次处理Firestore ,仅对服务器进行一次查询,然后对以后的所有查询进行查询。这是

加载特定firebase集合后,如何禁用其同步?除非强制执行,否则不应再次检查服务器

假设我有一个用户集合。我只想在用户登录时从服务器读取用户值。在用户注销并再次登录之前,我不希望更新用户集合的值

有办法吗?

无法“禁用”特定集合上的同步。SDK将始终以相同的行为同步所有内容。如果只想加载一次数据,则需要编写一些代码来处理这种情况。你可以:

  • 仅对服务器查询一次,然后将结果存储到另一个本地数据库中进行查询,而无需再次处理Firestore
  • ,仅对服务器进行一次查询,然后对以后的所有查询进行查询。这是不可靠的,因为缓存数据可能会在应用程序不知道的情况下从缓存中过期。您需要对服务器执行另一个查询,以确保缓存是最新的

  • 如果必须只读取一次数据,并且永远可靠地使用该数据,则应实施第一个选项。

    如果要强制Firestore客户端从其本地缓存读取数据,可以:

  • 用于强制仅从缓存获取文档
  • 禁用所有网络访问
  • 请注意,这两种方法都不是一个很好的选择,因为Firestore主要是一个云托管数据库,它可以在您离线时在短时间内继续工作。如果您只想使用Firestore定期同步数据,我建议使用Doug的第一种方法,并根据您的本地需求使用单独的本地数据库