声明:该文章来自(Github开源项目优选)版权由原作者所有,K2OS渲染引擎提供网页加速服务。
• 用户登录这块做得挺全,邮箱登录、手机登录都支持,要接微信、GitHub这些第三方也是分分钟的事
• 用户在哪登录的、用啥设备登的、啥时候登的,这些信息全都记着,安全日志随时查
• 要搞权限管理也简单,该看的看,不该看的直接拦住,团队协作也都考虑到了

数据管理
• 数据库这块用的是NoSQL,存JSON数据特别顺手,想怎么存就怎么存
• 查询功能一应俱全,要按条件筛选、要排序都行,该有的增删改查都有了
• 数据有变化能立马通知你,做个即时搜索、实时更新啥的都不在话下
存储功能
• 文件上传下载都给你封装好了,传啥都行,格式随意
• 要是传图片,还能顺便帮你压缩裁剪,省得单独处理
• 安全性也考虑到了,病毒扫描、文件加密都搞定,预览功能也有
高级功能
怎么用起来
直接用云服务
最简单的方式,现在还免费:
1. 上appwrite.io注册账号
2. 创建项目
3. 选SDK开始撸代码
自己搭建
要是想自己掌控,用Docker搭建也行:
Linux系统用这个:
docker run -it --rm \
--volume /var/run/docker.sock:/var/run/docker.sock \
--volume "$(pwd)"/appwrite:/usr/src/code/appwrite:rw \
--entrypoint="install" \
appwrite/appwrite:1.6.0
Windows系统用这个:
docker run -it --rm ^
--volume //var/run/docker.sock:/var/run/docker.sock ^
--volume "%cd%"/appwrite:/usr/src/code/appwrite:rw ^
--entrypoint="install" ^
appwrite/appwrite:1.6.0
装完访问localhost就能用了。
实际使用案例
用户登录长这样:
const client = new Client()
.setEndpoint('你的域名')
.setProject('项目id');
// 登录就一行代码
const account = new Account(client);
await account.createEmailSession('邮箱', '密码');
存数据这么写:
const db = new Databases(client);
await db.createDocument(
'数据库id',
'集合id',
'文档id',
{
name: '张三',
age: 25,
hobby: ['篮球', '编程']
}
);
上传文件更简单:
const storage = new Storage(client);
await storage.createFile(
'存储id',
'文件id',
document.getElementById('uploader').files[0]
);
写在最后
说实话,用了Appwrite确实省事不少。那些烦人的后端基础设施,它都给你封装好了。API设计得也挺合理,跟着文档撸下来就能用。关键是开源的,出了问题还能自己改。
要说它最适合啥场景,我觉得是这几种:
• 创业初期要快速验证想法
• 个人项目不想搞太复杂
• 小团队没精力维护完整后端
• 做个原型、概念验证
想深入了解的可以看[官方文档],从入门到进阶都写得挺详细。代码示例也多,复制粘贴就能跑。
开源地址:https://github.com/appwrite/appwrite
官方文档:https://appwrite.io/docs

[超站]友情链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/