【问题标题】:Does Firestore REST API support equivalent values to the SDK's FieldValue?Firestore REST API 是否支持与 SDK 的 FieldValue 等效的值?
【发布时间】:2019-12-20 00:58:38
【问题描述】:

我正在尝试使用 Firestore REST API,但很难找到有关我希望可用的 SDK 方法的文档。

这些包括 FieldValue.increment()FieldValue.serverTimestamp() (Firebase documentation: FieldValue) 之类的。这些可以通过 REST API 实现吗?我找不到任何与他们相关的文件。

【问题讨论】:

    标签: firebase google-cloud-firestore


    【解决方案1】:

    REST API 不一定易于使用,因为您实际上看到的是 gRPS 调用的有线协议。出于这个原因,documentation 说:

    如果您使用的是支持 gRPC 的语言,请考虑使用 RPC API 而不是 REST API。

    也就是说,诸如FieldValue.increment 之类的操作在 REST API 中以所谓的转换形式提供,这是在实际设置值之后在服务器上执行的附加操作(仍为同一写操作的一部分)。在这种情况下,您正在寻找FieldTransform 操作,如here 所示。

    我强烈建议研究here 给出的使用服务器端时间戳(非常相似)的示例,并大量使用Firestore API explorer

    【讨论】:

    • 谢谢,您提供的所有链接都是有用且富有洞察力的。这应该可以解决问题!
    • 跟进这些链接,您提供的服务器端时间戳示例看起来最适合,但我正在努力确定要执行其中一个的路径和请求类型“写”操作。你能建议吗?
    • “挣扎”在这里不是很可行。如果您仍在尝试 REST,请根据我提供的资源编辑您的问题以显示您现在拥有的内容。
    • 对不起,我会澄清的。该示例看起来像我需要的,但我无法对其进行测试,因为我无法确定要调用的 API 请求(URI),并且在赞成的答案中“写入”的链接是 404。这个@987654325 @ 是一个很好的参考,但我仍然不确定在哪里发出请求(例如,它不适用于 API 的 :runQuery 请求)
    猜你喜欢
    • 2021-02-26
    • 2012-04-15
    • 1970-01-01
    • 2016-10-18
    • 2012-01-17
    • 1970-01-01
    • 2018-04-09
    • 2016-09-22
    • 2014-12-07
    相关资源
    最近更新 更多