Appwrite让开发效率提升80%
声明:该文章来自(Github开源项目优选)版权由原作者所有,K2OS渲染引擎提供网页加速服务。
• 用户登录这块做得挺全,邮箱登录、手机登录都支持,要接微信、GitHub这些第三方也是分分钟的事
• 用户在哪登录的、用啥设备登的、啥时候登的,这些信息全都记着,安全日志随时查
• 要搞权限管理也简单,该看的看,不该看的直接拦住,团队协作也都考虑到了
数据管理
• 数据库这块用的是NoSQL,存JSON数据特别顺手,想怎么存就怎么存
• 查询功能一应俱全,要按条件筛选、要排序都行,该有的增删改查都有了
• 数据有变化能立马通知你,做个即时搜索、实时更新啥的都不在话下
存储功能
• 文件上传下载都给你封装好了,传啥都行,格式随意
• 要是传图片,还能顺便帮你压缩裁剪,省得单独处理
• 安全性也考虑到了,病毒扫描、文件加密都搞定,预览功能也有
高级功能
• 要写自定义逻辑有云函数,想跑啥代码都行
• 定时任务直接配个CRON就搞定,比如每天凌晨跑个数据分析
• 事件机制做得不错,数据库改了、文件传了都能及时知道
怎么用起来
直接用云服务
最简单的方式,现在还免费:
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/
- 1 大国来信 友谊之桥 7985732
- 2 网传董明珠被停职审查 格力回应 7930050
- 3 李小冉哭着跟刘晓庆道歉 7853335
- 4 春运高铁上空的守护者 7773498
- 5 刘德华又要到超市上班了 7687650
- 6 西安海关查获檀木三弦琴 7545094
- 7 36岁相声演员许兆呈离世 7420542
- 8 宁夏银川地震 7352189
- 9 郭德纲认证郭麒麟为德云社继承人 7231002
- 10 龚俊肿出氛围感 7143447