Python中Django框架下http协议的认识,MVC模式 MTC模式的认识

一.http协议的认识

1.什么是http协议

HTTP协议就是客户端和 服务器端之间数据传输的格式规范,格式简称为“超文本传输协议”。
基于TCP/IP:HTTP是一个属于应用层的面向对象的协议。HTTP协议工作于客户端-服务端架构上。
基于请求——响应模式:浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。


2.为什么说Http 协议是无状态协议?

HTTP是一种不保存状态,即无状态(stateless)协议。HTTP协议自身不对请求和响应之间的通信状态进行保存。


3.怎么解决Http 协议无状态协议?

通过Cookie(缓存),通过Session会话保存。

Cookie和Session的区别:

(1)相同点:cookie和session都是用来跟踪浏览器用户身份的会话方式

(2)不同点:cookie数据存放在客户的浏览器上,session数据放在服务器上;cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,如果主要考虑到安全应当使用session;session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,如果主要考虑到减轻服务器性能方面,应当使用cookie;单个cookie在客户端的限制是3K,就是说一个站点在客户端存放cookie不能超过3K;

所以:将登陆信息等重要信息存放为SESSION;其他信息如果需要保留,可以放在COOKIE中


4.Http请求中常见的请求方式

根据 HTTP 标准,HTTP 请求可以使用多种请求方法。
HTTP1.0 定义了三种请求方法: GET, POST 和 HEAD方法。
HTTP1.1 新增了六种请求方法:OPTIONS、PUT、PATCH、DELETE、TRACE 和 CONNECT 方法。

Python中Django框架下http协议的认识,MVC模式 MTC模式的认识

二、MVC模式和MTV模式

1.MVC 模式

MVC 就是把Web应用分为模型(M),控制器(C)和视图(V)三层,他们之间以一种插件式的、松耦合的方式连接在一起,模型负责业务对象与数据库的映射( ORM ),视图负责与用户的交互(页面),控制器接受用户的输入调用模型和视图完成用户的请求。

2.MTV 模式

Django 的MTV分别是值:

  • M 代表模型(Model): 负责业务对象和数据库的关系映射( ORM )。
  • T 代表模板 (Template):负责如何把页面展示给用户( html )。
  • V 代表视图(View): 负责业务逻辑,并在适当时候调用Model和Template。