位置: 编程技术 - 正文
推荐整理分享python web框架学习笔记(python的web框架),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:python webserver框架,python web应用框架,python的web框架,pythonweb框架学完后,python webapi框架,python wed框架,python3 web框架,python的web框架,内容如对您有帮助,希望把文章链接给更多的朋友!
一、web框架本质
1.基于socket,自己处理请求
2.基于wsgi
WSGI,全称 Web Server Gateway Interface,或者 Python Web Server Gateway Interface ,是为 Python 语言定义的 Web 服务器和 Web 应用程序或框架之间的一种简单而通用的接口。自从 WSGI 被开发出来以后,许多其它语言中也出现了类似接口。
WSGI 的官方定义是,the Python Web Server Gateway Interface。从名字就可以看出来,这东西是一个Gateway,也就是网关。网关的作用就是在协议之间进行转换。
WSGI 是作为 Web 服务器与 Web 应用程序或应用框架之间的一种低级别的接口,以提升可移植 Web 应用开发的共同点。WSGI 是基于现存的 CGI 标准而设计的。
很多框架都自带了 WSGI server ,比如 Flask,webpy,Django、CherryPy等等。当然性能都不好,自带的 web server 更多的是测试用途,发布时则使用生产环境的 WSGI server或者是联合 nginx 做 uwsgi 。
python标准库提供的独立WSGI服务器称为wsgiref。
请求过来后就执行RunServer这个函数。
原理图:
当用户发送请求,socket将请求交给函数处理,之后再返回给用户。
二、自定义web框架
python标准库提供的wsgiref模块开发一个自己的Web框架
之前的使用wsgiref只能访问一个url下面这个可以根据你访问的不同url请求进行处理并且返回给用户
当然 以上虽然根据不同url来进行处理,但是如果大量url的话,那么代码写起来就很繁琐。所以使用下面方法进行处理
三、模板引擎对应上面的操作 都是根据用户访问的url返回给用户一个字符串的 比如return xxx
案例:
首先写一个index.html页面
内容:
login.html页面
内容:
python代码:
但是以上内容只能返回给静态内容,不能返回动态内容那么如何返回动态内容呢
自定义一套特殊的语法,进行替换
使用开源工具jinja2,遵循其指定语法
index.html 遵循jinja语法进行替换、循环、判断
先展示大概效果,具体jinja2会在下章django笔记来进行详细说明
index.html页面
内容:
python代码:
四、MVC和MTV
1.MVC
全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
将路由规则放入urls.py
操作urls的放入controller里的func函数
将数据库操作党风model里的db.py里
将html页面等放入views里
原理图:
2.MTV
Models 处理DB操作
Templates html模板
Views 处理函数请求
原理图:
标签: python的web框架
本文链接地址:https://www.jiuchutong.com/biancheng/386134.html 转载请保留说明!友情链接: 武汉网站建设