Loading

4.-请求和响应

一、请求和响应
请求时指浏览器通过http协议发送给服务端到数据
响应时指房屋的收到请求后做相应的处理后再回复给浏览器的数据
 
二、请求中的方法
根据http标准,http请求可以使用多种请求方法
http1.0定义了三种请求方法,GET、POST、HEAD
http1.1新增了5种请求方法:OPTIONS,PUT,DELETE,TRACE,CONNECT
 
三、请求的方法详解
GET:请求指定的页面信息,并返回实体主体
POST:向指定资源提交数据进行处理请求,数据被包含在请求体中
HEAD:类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头
PUT:从客户端向服务器传送的数据取代指定的文档的内容
DELETE:请求服务器删除指定的页面
CONNECT:http1.1协议中预留给能够将连接改为管道方式的代理服务器
OPTIONS:允许客户端查看服务器的性能
TRACE:回显服务器收到的请求,主要用于测试或者诊断
 
四、Django中的请求
请求在Django中实则就是视图函数的第一个参数,即HttpRequest对象
Django接收到http协议的请求后,回根据请求数据报文创建HttpRequest对象
HttpRequest对象,通过熟悉描述了请求的所有相关信息
Django请求常见的属性方法
path_info:URL字符串

method:字符串,表示http的请求方法,常用值‘GET’、‘POST’

GET:QueryDict查询字典的对象,包含get请求方式的所有数据

POST:QueryDict查询字典的对象,包含post请求方式的所有数据

FILES:类似字典的对象,包含所有上传文件的信息

COOKIES:python字典,包含所有的cookie,key和value都为字符串

session:类似字典对象,表示当前的会话

body:字符串,请求体的内容(post或put)

scheme:请求协议(http/https)

request.get_full_path():请求的完成路径

request.META:请求中的元数据(消息头) 

request.META['REMOTE_ADDR']:访问的客户端ip地址

 

 
 
使用方法例如:
请求后面拼接参数 例如 http://127.0.0.1:8000/request_info/?a=1&b=3
 
五、Django中的响应对象
构造函数格式
HttpRespouse(count=响应体,content_type=响应体数据类型,status=状态码)
作用:向客户端浏览器返回响应,同时携带响应体内容

常用的Conent-Type

text/html  - 默认的,html文件

text/plain - 纯文本

test/css  - css文件

test/JavaScript - js文件

multipart/form-data  - 文件提交

application/json  - json传输

application/xml  - xml文件

 

 
六、 HttpResponse子类
HttpResponseRedirect 重定向/状态码=302
HttpResponseNotModified 未修改/状态码=304
HttpResponseBadRequest 错误请求/状态码=400
HttpResponseNotFound 没有对应资源/状态码=404
HttpResponseForbidden 请求被禁止/状态码=403
HttpResponseServerError 服务器错误/状态码=500
使用:
导入对应的包
 
 
 
 

posted @ 2022-01-12 11:03  木子七  阅读(207)  评论(0)    收藏  举报