「本文参与少数派 2020 年度征文 + 高效行动派」
去年四月份,因为疫情的缘故被迫待在家里,不能出门也没法和人沟通交流。偶然间读到了这篇文章 保卫表达:用后端 BaaS 快速搭建专属无点赞评论版微博 ——b 言 b 语 后,立马就自己动手部署了一个。
之所以非常积极是因为有次在朋友圈发了一张图片,而我完全不知道这张图有什么问题,导致微信朋友圈、聊天对话甚至 QQ 里面对方都无法看见这张图片。我也不想让自己的想法或者文字没有办法自己掌握,如果有一天无法使用这些平台,那么就可能丢失这些数据,也不方便进行管理。
为什么要进行备份?
完成搭建以后,能够随时随地在 PC 端、手机端发布一些自己的胡言乱语。但是让我开始每周进行数据备份的原因是有一天晚上我床上发布了一些自己的想法后,一不小心打错了一些字,让我这个强迫症立马打开网页去 Leancloud 的后台进行修改。
可是由于老版 Leancloud 网页并不适配手机端,导致所有的按钮、文字都挤在一堆。导致你能对数据进行修改的区域只有右边的一小部分。新版后台如下图,左边的界面是可以关闭的,老版则不行会一直显示。
老版界面虽然小心一点还是可以完成修改数据、保存数据等一些列操作。本来应该点击红色框删除一行,可是那天晚上有点困,加上我没有反复确认后点击了黄色框,一不小心删除了整个 Class 的数据。
因为 Leancloud 开发版不支持数据数据恢复,可是商用版的费用是我无法承担的一个数字,我被迫开始了每周使用坚果云 + OneDrive 进行定时备份数据。
为什么要使用快捷指令进行数据备份?
一开始我是使用的网页版进行数据备份。我需要每周中午十二点之前打开后台,选择我需要备份的 Class,之后去邮箱下载数据。
这个步骤就带了一些不便:
- 中午之前就打开后台,否则只能等待明天进行数据导出;
- 每次需要手动选中要备份的 Class;
- 每次打开电脑或者手机网页并不方便;
- 懒,希望有更简单的办法;
使用快捷指令进行备份
突然有一天,我自己在修改使用快捷指令进行 HTTP 请求对后台写入数据的时候想到能否通过 HTTP 请求进行数据导出呢?我查看了 Leancloud 的 REST API 使用详解 文档,并且找到了相对应的 API 接口。
这个请求格式和「b 言 b 语」作者提供的快捷指令模版是类似的。我们只需要修改其中的 url 为 /exportData
即可。
由于我有两个需要导出的 Class,那么根据文档指示,我在请求体中添加了需要导出名为 content
和 dream
的两个 Class 即可。
当然你还可以实现其他操作,都在 API 文档里面有所提及,你可以按需配置,例如:
- 指定导出数据的起始时间
- 指定接收邮箱
- 返回导出结果的下载链接
- ...
使用 Postman 进行调试
因为快捷指令不方便进行调试,并且 Leancloud 导出数据有限制,一天只有三次机会。所以如果有安装 Postman 这个软件,我建议你先在 Postman 里面进行测试,完成后再填写进快捷指令,减少不必要的麻烦。
你可以轻松使用文档提供的 curl 命令快速导入到 Postman 里面进行调试和配置。
你最后只需要修改蓝色框部分为你自己应用的相关信息即可。
以上信息你可以在应用的 设置-应用 Keys 里面找到。复制后直接填入即可。
你可以在下方看见是否报错,再根据文档进行排查错误。
实现自动化导出数据
配合快捷指令和自动化就可以完美解决之前遇到的四个麻烦。你所需要做的是找个空闲时间打开邮箱下载数据就可以了,懒人福音。
当然你也可以使用服务器,编写定时任务也可以实现相同的技巧。
如果你有更好的办法,请在评论区留言大家一起讨论。