【问题标题】:Get path of the Firebase reference获取 Firebase 参考的路径
【发布时间】:2016-07-09 18:14:59
【问题描述】:

在给定 Firebase 参考的情况下,如何获取 Firebase 路径(没有主机名部分的位置字符串,例如 "users/user1")?我在文档中找不到并尝试搜索但没有运气。

现在我在 Node.js 中这样做了,给定 Firebase 参考 ref

var url = require('url'); // standard Node.js 'url' module.
var location = url.parse(ref.toString()).pathname;

这是正确的做法还是存在更可靠的方法?

PS。我看到ref.path.o 是包含可以构造路径的字符串的数组,但我认为它不在公共 API 上并且可能会发生变化?

【问题讨论】:

    标签: javascript node.js firebase firebase-realtime-database


    【解决方案1】:

    如果您在 Firebase 的上下文之外考虑这一点,它会变成“我如何仅从 URL 中获取路径?”搜索它一定会得到很好的结果。它们可能与您现在想出的相似。

    另一种方法可能是依靠 Firebase 2.x SDK's root() method, which later became the root property in Firebase 3 SDK onwards 来确定基本 URL。

    // For Firebase 2.x SDK
    var location = ref.toString().substring(ref.root().toString().length);
    
    // For Firebase 3 SDK and later
    var location = ref.toString().substring(ref.root.toString().length);
    

    【讨论】:

    • 好的。所以我猜它没有要调用的API? (我期待着)。无论如何,感谢您的快速回复:)
    • 我错过了一些东西。我最初的问题是如何获取基本 URL 之后的路径,而不是基本 URL 本身(抱歉有歧义)。所以答案是var location = ref.toString().substring(ref.root().toString().length);
    • 啊对,我确实拿错了字符串的一部分。现已修复。
    • 检查正确的位置 => ref.toString().substring(ref.root.toString().length)
    • @JuanDavid 上述答案适用于 Firebase 2.x SDK(因为这是我编写它时存在的最新版本)。在 Firebase 3.x SDK 中,root 确实是只读属性,而不是函数调用。
    猜你喜欢
    • 1970-01-01
    • 2020-12-09
    • 2020-08-01
    • 1970-01-01
    • 2022-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多