django中级 --- HttpRequest
作者:
梦想做小猿 | 来源:发表于
2017-01-04 17:53 被阅读0次说明
django中每个views函数的第一个参数为HttpRequest,每一个请求都会生成一个 HttpRequest 对象,django会将这个对象自动传递给响应的视图函数,一般视图函数约定俗成地使用 request 参数承接这个对象。
HttpRequest对象常用属性
属性 |
说明 |
request.scheme |
请求协议,一般为http或https |
request.path |
字符串,为请求的URI |
request.method |
表示请求方法,POST,GET等 |
request.encoding |
表示提交数据的编码,默认utf-8。可修改该属性 |
request.GET |
一个类似于字典的对象,包含 HTTP GET 的所有参数 |
request.POST |
一个类似于字典的对象,如果请求中包含表单数据,则将这些数据封装成 QueryDict对象 |
request.REQUEST |
一个类似于字典的对象,它首先搜索POST,然后搜索GET,主要是为了方便 |
request.COOKIES |
一个标准的Python 字典,包含所有的cookie。键和值都为字符串 |
request.FILES |
一个类似于字典的对象,包含所有的上传文件信息。FILES 中的每个键为<input type="file" name="" /> 中的name,值则为对应的数据。注意,FILES 只有在请求的方法为POST 且提交的<form> 带有enctype="multipart/form-data" 的情况下才会包含数据。否则,FILES 将为一个空的类似于字典的对象 |
request.META |
一个标准的Python 字典,包含所有的HTTP 首部。具体的头部信息取决于客户端和服务器 |
request.user |
一个 AUTH_USER_MODEL 类型的对象,表示当前登录的用户 |
request.session |
一个既可读又可写的类似于字典的对象,表示当前的会话 |
HttpRequest常用方法
方法 |
说明 |
request.get_host() |
根据从HTTP_X_FORWARDED_HOST(如果打开 USE_X_FORWARDED_HOST,默认为False)和 HTTP_HOST 头部信息返回请求的原始主机。如果这两个头部没有提供相应的值,则使用SERVER_NAME 和SERVER_PORT |
request.get_full_path() |
返回 path,如果可以将加上查询字符串,如:/abc?name=aaa |
request.is_secure() |
如果请求时是安全的,则返回True;即请求通是过 HTTPS 发起的 |
request.is_ajax() |
如果请求是通过XMLHttpRequest 发起的,则返回True,方法是检查 HTTP_X_REQUESTED_WITH 相应的首部是否是字符串'XMLHttpRequest' |
本文标题:django中级 --- HttpRequest
本文链接:https://www.haomeiwen.com/subject/aatavttx.html
网友评论