实时数据库规则语言中的Firebase速率限制

隐性哈巴狗


我目前正在尝试通过检查上一个帖子的时间戳,然后向其添加+ 60秒,然后检查它是否小于当前Firebase Server时间戳(现在),来实现速率限制。它总是以某种方式返回true并授予访问权限?!

这些是我的规则:

{
  "rules": {
        "posts": {
        ".read": true,
            ".write": 
"(root.child('users').child(auth.uid).child('lastPost').val() + 60) < now"
      }
  }
}




这是我的数据库结构

{
    "posts": {
        "-KV70ppGGTEtXY4_Q4UC": {
            "author": "abcdedef-uid-ojifgoöifjgssgd",
            "description": "Thats the post description",
            "title": "Thats the post title"
        }
    },
    "users": {
        "2uy7323nTodMHcVxeEDJzoexH302": {
            "canPost": true,
            "email": "[email protected]",
            "lastPost": 14776667681,
            "profile_picture": "https://lh3.googleusercontent.com/-XdUIqdMkCWA/AAAAAAAAAAI/AAAAAAAAAAA/4252rscbv5M/photo.jpg",
            "username": "Cryptic Pug"
        }
    }
}
隐性哈巴狗

感谢您的线索弗拉基米尔!

因为我还没有找到这种解决方案的任何软件,所以我想在这里正式分享答案:

    {
  "rules": {
        "posts": {
        ".read": true,
            ".write": 
"(root.child('users').child(auth.uid).child('lastPost').val() + 60000) < now"
      }
  }
}

解释:

当用户发布内容时,您总是使用“用户的值”更新数据库中的firebase.database.ServerValue.TIMESTAMP“用户”信息。在“规则语言”中,您读取了要发布的用户的“上次发布的时间戳”(auth.uid使用FB规则语言),并添加了60秒(* 1000,因为Firebase在其时间戳中使用了毫秒),用户将被允许再次发布。然后检查当前服务器的时间戳是否高于(<)大于允许用户再次发布的时间。

希望它对你们有帮助,Happy Coding-做Firebase 3天了,太好了!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Firebase实时数据库-规则

来自分类Dev

Firebase实时数据库规则拒绝权限

来自分类Dev

创建/更新/删除 Firebase 实时数据库规则

来自分类Dev

Firebase 实时数据库规则。获取 url 中没有 @uid 的规则

来自分类Dev

Firebase实时数据库addValueEventListener

来自分类Dev

Firebase实时数据库addValueEventListener

来自分类Dev

Android:Firebase实时数据库

来自分类Dev

Firebase 实时数据库的问题

来自分类Dev

Firebase 实时数据库帖子

来自分类Dev

Firebase实时数据库规则模拟器中的空数据

来自分类Dev

Firebase,如何限制从特定数据集的检索请求(实时数据库)

来自分类Dev

在Firebase实时数据库中添加“ .indexOn”规则的正确方法是什么?

来自分类Dev

我的Firebase实时数据库安全规则出现问题

来自分类Dev

Firebase实时数据库规则在前端不起作用

来自分类Dev

Firebase实时数据库验证规则不起作用

来自分类Dev

在终端中进行Firebase部署后,如何获取实时数据库规则?

来自分类Dev

Firebase实时数据库规则不适用于新用户

来自分类Dev

用于阻止创建/删除的Firebase实时数据库安全规则

来自分类Dev

Firebase 实时数据库中需要安全规则吗?

来自分类Dev

Firebase 实时数据库规则不起作用

来自分类Dev

如何让 Firebase 实时数据库的安全规则读取 cookie?

来自分类Dev

您可以控制 firebase 实时数据库安全规则中的各个属性吗?

来自分类Dev

仅在 firebase 实时数据库中的一个节点上禁用读取规则

来自分类Dev

指定Firebase实时数据库请求的条件和限制

来自分类Dev

限制添加到 firebase 实时数据库中的子项数量

来自分类Dev

实时数据库

来自分类Dev

如何从Firebase中的实时数据库获取数据

来自分类Dev

从Firebase实时数据库读取特定数据

来自分类Dev

如何从Firebase实时数据库读取数据

Related 相关文章

  1. 1

    Firebase实时数据库-规则

  2. 2

    Firebase实时数据库规则拒绝权限

  3. 3

    创建/更新/删除 Firebase 实时数据库规则

  4. 4

    Firebase 实时数据库规则。获取 url 中没有 @uid 的规则

  5. 5

    Firebase实时数据库addValueEventListener

  6. 6

    Firebase实时数据库addValueEventListener

  7. 7

    Android:Firebase实时数据库

  8. 8

    Firebase 实时数据库的问题

  9. 9

    Firebase 实时数据库帖子

  10. 10

    Firebase实时数据库规则模拟器中的空数据

  11. 11

    Firebase,如何限制从特定数据集的检索请求(实时数据库)

  12. 12

    在Firebase实时数据库中添加“ .indexOn”规则的正确方法是什么?

  13. 13

    我的Firebase实时数据库安全规则出现问题

  14. 14

    Firebase实时数据库规则在前端不起作用

  15. 15

    Firebase实时数据库验证规则不起作用

  16. 16

    在终端中进行Firebase部署后,如何获取实时数据库规则?

  17. 17

    Firebase实时数据库规则不适用于新用户

  18. 18

    用于阻止创建/删除的Firebase实时数据库安全规则

  19. 19

    Firebase 实时数据库中需要安全规则吗?

  20. 20

    Firebase 实时数据库规则不起作用

  21. 21

    如何让 Firebase 实时数据库的安全规则读取 cookie?

  22. 22

    您可以控制 firebase 实时数据库安全规则中的各个属性吗?

  23. 23

    仅在 firebase 实时数据库中的一个节点上禁用读取规则

  24. 24

    指定Firebase实时数据库请求的条件和限制

  25. 25

    限制添加到 firebase 实时数据库中的子项数量

  26. 26

    实时数据库

  27. 27

    如何从Firebase中的实时数据库获取数据

  28. 28

    从Firebase实时数据库读取特定数据

  29. 29

    如何从Firebase实时数据库读取数据

热门标签

归档