Angular和Firebase-正确使用orderByKey进行查询

Angular和Firebase-正确使用orderByKey进行查询,angular,firebase,firebase-realtime-database,Angular,Firebase,Firebase Realtime Database,这里我有一个查询,效果很好: url是Firebase在创建文章时生成的$key findArticlesByUrl(url:any) { return this.afDb.list('articles', { query: { orderByKey: url, equalTo: url } }).do(console.log); 我好奇的是

这里我有一个查询,效果很好:
url
是Firebase在创建文章时生成的
$key

   findArticlesByUrl(url:any) {
        return this.afDb.list('articles', {
          query: {
            orderByKey: url,
            equalTo: url
          }              
        }).do(console.log);

我好奇的是,我需要告诉它两次,通过
url
查询列表。因此,在上面的代码中,我是在告诉你——“按键排列这个列表,并使用
url
作为参数值。url值应该和url中的值一样”。。。这毫无意义。我做得对吗?

如果您的数据库如下所示:

articles
  "-KsWM-xif_wPxIvsu5CZ"
     prop1: "..."
     prop2: "..."
  "-KsWNf4AOuuGGsBfeIlg"
     prop1: "..."
     prop2: "..."
这应该起作用:

findArticlesByUrl(url: string) {
   return this.afDb.object('articles/' + url).do(console.log);
}

那么url是每篇文章的唯一键吗?是的,它是由Firebase为每篇文章生成的