Python3廖雪峰实战项目:难点RequestHandler

最近一直在补别的知识点,个人博客实战项目就耽误了一段时间,不过,再次看day5清晰了一些;但是对新手上路的我,还是一脸懵逼(黑人问号脸?),所以这里稍微记录下自己的理解(本课内容还没有吃透,后面还要回过来研究,暂时先告一段落)。

day5 的重点是自己动手撸一个Web框架,我特地去浏览了一遍asyncio的api,再加上网上各位大大的解疑博客,小白大概理清了本课的以下几个重难点:

首先Web框架需要处理啥?

简单说,就是通过request实现前台视图view和后台的交互,即后台发送request给前台,前台解析并显示;前台发送request给后台,中间要经过解析转换成后台可以处理的事务。Web框架就是对这些request进行标准化处理。

其次,核心函数及类有哪些?

day5主要完成三个py文件:coroweb.py、app.py、handlers.py
coroweb.py下核心类:RequestHandler
app.py下核心函数:data_factory、response_factory

  1. RequestHandler类:借助handler的特性,接收request,并处理request、url的参数标准化,返回一个标准的Web.Response对象,符合aiohttp的流程。

    • 获取需要的参数列表
    • 把request携带的参数解析为需要的参数形式
    • 检查解析的参数是否正确
    • 最后传递参数
  2. data_factory:集中处理request数据格(POST:’application/json’、’application/x-www-form-urlencoded’、’multipart/form-data’)

  3. response_factory:生成标准HTTP response的函数工厂,利用handler的性质,接收request,返回浏览器可识别的Response对象

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值