【问题标题】:Creating unique dynamic URLs for my Firebase website?为我的 Firebase 网站创建唯一的动态网址?
【发布时间】:2021-10-09 21:38:36
【问题描述】:

这是一个非常新手的问题,但我正在使用 Google Firebase 和 vanilla JS 创建一个网站。我想创建一个网站,用户可以在其中创建自己的电影收藏(他们从电影 API 搜索),并制作自己的列表,还可以搜索他们的朋友并查看他们的收藏。

到目前为止,我已经完成了一些个人用户功能。他们可以制作和定制他们的个人资料。下一步是制作功能,以便每个用户都可以制作他们的电影收藏等等,我可以做到。

我想知道的是,我最终将如何连接它,以便为每个人和他们的电影收藏创建一个唯一的 URL?例如,用户可以直接访问https://www.example.com/userProfile?uid=314159等。我需要学习哪些工具或概念才能继续制作这样的网站?

【问题讨论】:

    标签: javascript firebase web dynamic server


    【解决方案1】:

    有几个组件:

    • 数据库(或广义上的存储)。您需要一个地方供用户存储他们的收藏等。由于您已经允许用户自定义他们的个人资料,这可能没什么大不了的。
    • ID 生成:您可以找到几种技术。您可以简单地使用顺序 ID(例如,大多数 DB 都有一个增量整数作为主键),但您也可以使用 UUIDs/GUIDs,重新创建 YouTube 的随机视频 ID,...
    • 托管您的前端并与您的数据库通信的后端。我认为 Firebase 会为您完成大部分工作。
    • 实际显示给用户的前端。为此有几种技术/框架,例如单页应用程序、服务器端渲染……所有有大量文档/教程的东西。

    生成 ID 后,您可以将其作为集合的一部分存储在表中。每当用户访问集合 URL 时,您将从 URL 中提取 id(例如使用path parameters in ExpressJS),查询数据库以获取正确的集合和其中的所有电影,然后做任何您想做的事情,即显示给用户.

    如果您可以为收藏/电影执行此操作,请将其扩展到例如朋友列表很简单。

    您的问题非常广泛。大多数部分(即框架/工具)你可以简单地谷歌或四处寻找。您可以选择使用前端框架(React、AngularJS、...)和其他框架,这些都是部分偏好/经验和部分最适合您的需求(这是一个不适合 SO 的完整讨论)。除此之外,您只有常规的编程概念。有些取决于语言,有些只是一般的,即 OOP 模式,如工厂模式。让您大致了解所有这一切,这就是获得计算机科学学位所做的工作。

    【讨论】:

    • 感谢您的建议。我想知道更多关于如何实际创建系统,其中将为每个用户及其电影集合自动创建 URL,例如为页面动态创建 URL,以及这些页面填充来自 Firebase DB 的相关信息。我很想知道这些任务使用了哪些技术(Node?Express?),所以我可以开始了解它们。
    • 我会说坚持你正在使用的东西。当用户创建一个集合(并且您即将将其写入数据库)时,生成一个 ID 并将其添加到集合中。之后,您可以使用例如Express 托管您的服务器端 API(和前端文件),这些 API 将使用例如;路径/collections/:id 允许使用req.params.id 查询数据库中的集合。如果您已经在使用类似于 Express 的其他东西,则可以在此处添加该逻辑。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-18
    相关资源
    最近更新 更多