一些基于sanic的总结

本文作者从flask转向sanic,介绍了sanic在后端服务中的应用,包括与golang协作处理高负载,实现登陆状态管理、用户邮箱激活、加密传输等。此外,还涉及了图片上传鉴权、敏感信息审核、队列任务处理等方面,展示了sanic在异步处理和性能优化上的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前的时候一直用的flask做后端的,只是用了后发现他是阻塞式的,对比了一下sanic后果断的换了sanic。说实话用flask的确是很方便。什么东西拿来就用的。登陆管理有Login模块,很方便。但是选择了sanic就选择了自己造轮子了。

    我的后端用的是golang和sanic所有的api请求全部放到golang里面,实际上sanic的角色就是主要的逻辑判断和模板渲染。毕竟golang的处理能力和Python相比要强得多。这样把主要的负载放到golang里面就不用担心sanic了。当然sanic和golang是共享登录状态的。今天总结一下大概的。

登陆状态管理:参考了github的一个别人的小demo然后自己用flask的思路实现了,flask的@auth.login_required,logout,

is_authenticated,is_anonymous,current_user目前主要用到的是这几个,登录状态是基于redis存储的不是cook保存。角色权限这一块目前还没有去做后面会慢慢完善。

用户邮箱激活:这一块也是基于flask的思路来做的不同的是用的异步方式。主要思路是注册后异步发邮件后发一条加密后的连接给用户邮箱。点击连接访问激活路由的时候进行解密验证,当然加密的东西必须和这个用户的资料相关,因为解密后核对的时候和用户的资料某个字段对比,过期时间就很简单了,加密时候加一个时间戳进去,解密后会得到一个用户资料某个字段和一个时间戳,和当前时间对比,超过多久就过期判断一下过期了就不给激活abort(404)就可以了

用户注册登陆账号密码前后端的加密传输加密保存:这里最重要的实际就是前后端要采用一样的加密解密方式其实没有什么难度。

基于redis的用户请

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值