面向对象的服务器-支持动态解析-服务器的框架解耦-支持框架的服务器-WGSI协议-支持WGSI协议的服务器-字典传参-给程序传参数

后端——>Django框架——>用Python写的要想自己改Django,先得了解框架,学会mini-web框架,学mini-web框架,需要遵守WSGI协议要实现mini-web的流程在sublime里Ctrl+h:全局替换保证两边都close掉了,内存都被释放掉,不然用户一多就爆掉了进程之间都是独立的,才需要;多线程是共享的,不需要;携程也不需要一、面向对象的服务器二、支持动态解析返回数据时不是直接返回——>需要组拼请求头和请求体再返回请求头里有User-Agent:(主要识别客户所用的操作系统浏览器的版本)1)User-Agent:爬虫时一定要有2)User-Agent会告诉网站服务器,访问者是通过什么工具来请求的,如果是用户浏览器,就会应答以上遵循HTTP协议三、服务器的框架解耦-支持框架的服务器四、WGSI协议如何可以不修改服务器和架构代码而确保可以在多个架构下运行web服务器呢?——WSGIWSGI协议规定:1.服务器调用框架时,必须告诉浏览器请求的是啥2.框架在返回数据时规定怎么给要想遵循协议,首先框架里必须要有一个可以直接调的函数,传来的参数正常有两个——一个是字典,另一个是函数(函数的引用)浏览器请求动态页面过程五、支持WGSI协议的服务器-字典传参body = mini_frame027.application(env, self.set_response_header) # 第69行黄色框括号里的两个参数分别是字典和函数函数(, ,头信息是一个列表)# 第86行红色框头信息传过来是列表,列表里的每一个元素是元组,元组里键值对,:前是键,:后是值environ:一个包含所有HTTP请求信息的dict对象;start_response:一个发送HTTP响应的函数。六、给程序传参数以字符串形式传参:传任何数据都以字符串形式对待端口被占用,程序运行不了解决方案:换端口去web服务器导入,main方法运行程序端口正确实例化时把接收的端口port传进去init接收端口,绑定不能写死,改为porthttp服务器做成通用的好处:可以随意调用哪个模块下的哪个函数