Firebase REST API过滤器不起作用

时间:2018-07-31 15:06:29

标签: firebase firebase-realtime-database vue.js vuejs2

我正在尝试学习如何使用Firebase进行休息呼叫

我有以下内容,但没有结果,

('/cases.json?orderBy="case_status"&equalTo="live"')

如果我删除

?orderBy="case_status"&equalTo="live"' 

我将所有结果都退回了

('/cases.json?orderBy="$key"&limitToFirst=2')

也可以

我的firebase表如下

cases
 -LFXvk9yY5c-O8yIdf8k
   case_name: "Issue 1"
   case_status: "live"
   case_summary: "Problem with code"
   contact: "Fred"

-LFXvk9yY5c-O8h45std
   case_name: "Issue 2"
   case_status: "complete"
   case_summary: "Also problem with code"
   contact: "Fred"

我还尝试了如下添加规则,但是那也不起作用

{
  "rules": {
    ".read": true,
    ".write": true,
    ".indexOn": "case_status"
  }
}

任何人都可以告诉我为什么过滤器不起作用,因为文档看起来应该如此

谢谢

1 个答案:

答案 0 :(得分:1)

您可能错过了https://firebase.google.com/docs/database/rest/retrieve-data的REST API文档中的以下警告

  

将索引添加到Firebase实时数据库规则中:如果您在应用中使用orderBy,则需要通过Firebase实时数据库中的.indexOn规则定义要索引的键规则。

您的规则应类似于:

{
  "rules": {
      ".read": "true",   //just an example, probably to adapt!!
      ".write": "true",  //just an example, probably to adapt!!
      "cases": {
          ".indexOn": "case_status"
       }
  }
}