KillTime再更新!完成form处理,新增redirect, 下一个是cor!

前情提要

上回添加中间件后,就一直琢磨着该添加什么功能。和其他成熟的框架对比后,自觉还差很多东西没有完成,比如orm, redirect也没有,还有跨域,cookie,session这些。orm我搞不定,难道cookie我还搞不定吗?开干!

成果

可以看到,目前支持cookie的解析和设置,其他也就没啥了。jwt什么的有现成的,直接用就好了。

redirect

目前redirect方法也已经支持。现在response类已经支持很多方法了,参看下图:

redirect是怎么实现? 我一开始这样想,一个请求发送进来后,它可是要直接往handler跑的呀,难道还能用什么把它夹住?然后让它掉个头!扯犊子!回忆起一个请求从发起到handler的全过程,我这才想起来,一个请求进来后,处不处理完全是后端代码控制的,你发get请求,我让你执行post方法都成。嘿嘿。

前几篇文章说过,处理的信息都在routes这个dict里面,传进函数里面向怎么操作都成,再回顾一下routes的结构:

拿到handlerclass之后,想干啥干啥,下面看我的:

咳咳,搞错了,这样没有没有传入routes。这里定义了redirect_get和redirect_post方法,转入指定路径下的handler下的get和post方法。redirect差不多就是这样了。

其他

除了cookie,其他方面我觉得已经渐渐完善了。下面是已经完成的工作:

  1. response返回: json / text / status_code / file / html / file / redirect
  2. form: get参数获取/post参数获取/post文件处理/文件保存 (全部是装饰器模式)
  3. cookie
  4. static_file: 处理静态资源
  5. 主类:处理port / 路由 /
  6. 中间件机制
  7. 路由机制 (不断更改中)

除了这些,感觉应该还有一些。比如orm, session,跨域等。真的江郎才尽了。佬你觉得呢?实在不行就准备去抄作业了,嘿嘿。

屏幕前的帅比,如果你对killtime的往期内容感兴趣,不妨看看下面的文章:

相关推荐
PPPPickup几秒前
easychat---创建,获取,获取详细,退群,解散,添加与移除群组
java·开发语言·后端·maven
回家路上绕了弯27 分钟前
大表优化实战指南:从千万到亿级数据的性能蜕变
分布式·后端
Home30 分钟前
23 种设计模式--桥接(Bridge)模式(结构型模式二)
java·后端
用户120391129472634 分钟前
AIGC 时代,数据库终于可以“听懂人话”了:从零打造自然语言操作 SQLite 的完整实战
python·sqlite·aigc
Q_Q51100828535 分钟前
python+django/flask+vue农业电商服务系统
spring boot·python·pycharm·django·flask
帕巴啦36 分钟前
Python计算累积频率——Origin绘制累积频率图
python·绘图·origin·累积频率·python计算累积频率·origin绘制累积频率图
编程修仙42 分钟前
第九篇 Spring中的代理思想
java·后端·spring
aiopencode1 小时前
iOS CPU 使用率深度分析,多工具协同定位高占用瓶颈的工程化方法
后端
Q_Q5110082851 小时前
python+django/flask+vue的基于疫情防控管理系统的数据可视化分析系统
spring boot·python·django·flask·node.js
I'm Jie1 小时前
告别重复编码!SpringBoot 字段变更(新旧值)日志工具类的规范化设计与优雅实现
java·spring boot·后端