【问题标题】:firestore database validation on type类型的firestore数据库验证
【发布时间】:2018-06-22 23:33:34
【问题描述】:

有人知道如何根据instanceof 进行验证吗?

这似乎是一项不费吹灰之力的检查,但我在文档中找不到此类验证的参考,而且我的尝试并不正确。

如果值不是Date,我想失败。在当前版本的 firestore 中,它可能是 Timestamp

尝试失败

allow write: if request.resource.data.date instanceof Date;
allow write: if request.resource.data.date instanceof Timestamp;
allow write: if !!Timestamp(request.resource.data.date);
allow write: if !!rules.Timestamp(request.resource.data.date);
allow write: if !!rules.Timestamp.date(request.data.date);
allow write: if !!Timestamp.date(request.data.date);
allow write: if !!Timestamp(request.data.date);

【问题讨论】:

    标签: firebase google-cloud-firestore firebase-security


    【解决方案1】:

    我通过 Firebase 支持了解了解决方案。关键比较器是 is 关键字。

    allow write: if request.resource.data.date is timestamp;
    

    【讨论】:

    • 任何文件?例如,我应该为 GeoPoint 输入什么?
    • 一年多后仍然没有文档。网上几乎没有例子。火力基地的弱点肯定。您是否在该主题上找到了更多帮助?
    • 我能找到的唯一用于类型检查的官方“文档”来源来自这个视频:youtube.com/watch?v=qbd_4LT0Y4s(大约在 11:00 标记)
    • 如果在定义安全规则时使用错误,它会在错误消息中列出可用的类型,这可能会很有用。所以我把它留在这里:bool,bytes,constraint,duration,float,int,latlng,list,set,number,map,string,timestamp,path,map_diff
    猜你喜欢
    • 2020-01-21
    • 2020-01-05
    • 1970-01-01
    • 1970-01-01
    • 2020-04-28
    • 2019-01-23
    • 2012-04-29
    • 1970-01-01
    • 2020-09-01
    相关资源
    最近更新 更多