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
使用:
导入对应的包


风月都好看,人间也浪漫.