Firebase 官网截图
Firebase 官网截图

Firebase 是什么?

Firebase 是一家实时后端数据库创业公司,它能帮助开发者很快的写出 Web 端和移动端的应用。于 2014 年 10 月 Google 收购了 Firebase,之后把 Firebase 结合到 Google 的云服务中。


Firebase 在国内能用吗?

Google 北京的官方答案是 不可以

根据中国的法例,中国用户的数据必需存放在中国内境内的服务器上。所以如果通过代理或其他方式把用户数存放在中国内境外的数据库是不允许,并且也不是长久之计。



Firebase 的开源替代方案: Parse

Parse 官网截图
Parse 官网截图

Parse 是什么?

Parse 是一个基于云端的后端管理平台。对于开发者而言,Parse提供后端的一站式和一揽子服务:服务器配置、数据库管理、API、影音文件存储,实时消息推送、客户数据分析统计、等等。这样,开发者只需要处理好前端/客户端/手机端的开发,将后端放心的交给 Parse 即可。

脸书 (Facebook) 于 2013 年收购了 Parse,后来又决定了把 Parse 关闭,最后 Parse 决定了把他们的代码开源,有了现在的 Parse ServerParse Dashboard,最近也支持上 GraphQL 等功能

21云盒子提供一键托管,免运维的 Parse Server 作为 Firebase 的国内替代方案



如何创建一个 Parse Server?

  1. 注册成为 21云盒子会员
  2. 创建一个 MongoDB 数据库
  3. Fork Parse Server 启动模板
  4. 在 21云盒子 上创建一个 云服务, 并允许21云盒子访问你的代码库
  5. 用下面配置进行创建
环境 Node
构建命令 yarn install
启动命令 yarn start

进阶配置 进行环境变量配置:

KEY VALUE
APP_ID 随机生成 32 位字符
MASTER_KEY 随机生成 32 位字符
MONGODB_URI 在云数据库控制台中点 数据库URL 获取
SERVER_URL <APP_ID>.21cloudbox.com, 如 parse-server-demo.21cloudbox.com
PORT 10000, 21云盒子默认使用的端口

更多其他 Parse Server 的环境变量配置,可参考 官方文档

随机生成 32 位字符方法: 在 命令行 粘贴一下以下命令:

echo $(base64 /dev/urandom | head -c32)

Parse 部署成功后,可以到 <APP_ID>.21cloudbox.com/test,进行测试。当测试成功后,你会看到以下的效果。

Parse 部署成功
Parse 部署成功

实际操作视频:

Firebase国内替代方案 - 如何把 Parse 部署到服务器



如何使用 Parse Server 创建和读取数据?

你可以使用 curl 指令或者使用可视化界面的 Postman 帮你创建和读取数据。

创建数据

curl 的方式创建

curl -X POST \
-H "X-Parse-Application-Id: <APPLICATION_ID>" \
-H "Content-Type: application/json" \
-d '{"score":1337,"playerName":"Sean Plott","cheatMode":false}' \
https://<APP_ID>.21cloudbox.com/parse/classes/GameScore

创建成功后,你应该会收到一个类似的 json

{
    "objectId": "9ed7LlOzn2",
    "createdAt": "2021-03-25T07:03:28.668Z"
}

读取数据

通过objectId, 读取上面创建的数据

curl -X GET \
  -H "X-Parse-Application-Id: APPLICATION_ID" \
  https://<APP_ID>.21cloudbox.com/parse/classes/GameScore/9ed7LlOzn2
// Response
{
    "objectId": "9ed7LlOzn2",
    "score": 1337,
    "playerName": "Sean Plott",
    "cheatMode": false,
    "createdAt": "2021-03-25T07:03:28.668Z",
    "updatedAt": "2021-03-25T07:03:28.668Z"
}

用 Postman 创建和读取数据演示:

Firebase国内替代方案 - 用 Postman 创建和读取数据

除了上面简单的使用 curl 或 Postman 的方法创建数据,Parse 也提供了多语言的 SDK (iOS, Android, PHP等等),更多细节请查看 Parse 官方技术文档: http://docs.parseplatform.org/


相关文章



联系我们

针对您所处的行业与业务场景, 我们为您打造专业的解决方案