目录
HttpResponse介绍
常用属性
content: 返回的内容
编辑 content_type:返回给数据的MIME类型
status_code: 返回的HTTP响应状态码
render 返回网页
给网页传值
1. 指名道姓方式传值
2. 使用locals()将函数内部所有的变量名都传给网页, 包括request
redirect 重定向
传递一个具体的ORM对象(了解即可)
传递一个视图的名称
跳转至其他网址
写全地址名
JsonResponse: 返回Json格式数据
对于非字典类型的数据进行JSON序列化时, 需要修改一个safe=False参数
django服务端启动之后, 以浏览器输入不同的路径后缀, 达到访问不同的页面为例:
首先在urls.py中先做好路由与视图的关系
from django.conf.urls import url
from django.contrib import admin
from app01 import views as app01_views
urlpatterns = [
url(r'^admin/', admin.site.urls),
# 在app01 的 views.py 中写响应的函数,这里以 index 为例
url(r'^index/',app01_views.index)
]
然后浏览器会将提交上来的这些数据封装起来, 传给对应的视图函数, 视图函数在处理完相关的逻辑之后, 也需要返回一个响应给浏览器
app01.views.py文件
注意: 所有的视图函数都需要一个位置参数, 这个参数就是请求相关的所有数据对象
from django.shortcuts import render, redirect,HttpResponse
def index(request):
"""
:param request:
:return:
"""
return '响应对象'
也可以在HttpResponse()的括号内直接写
def index(request):
response = HttpResponse()
response.content='6666
'
return response
或者
from django.shortcuts import render, HttpResponse, redirect
def index(request):
response = HttpResponse('6666
')
return response
默认为text/html. 浏览器会根据这个属性, 来显示数据, 如果是text/html,那么就会解析这个字符串, 如果text/plain, 那么就会显示一个纯文本, 常用的content-tyoe如下;
text/html >>> 默认的HTML文件
text/plain (纯文本) 注意: 一半在使用'text/plain'时都会加上'插入色图头发', 否则会使乱码的
text/css >>> css文件
text/javascript >>>js文件
multipart/form-data >>> 文件提交
application/json >>> json传输
application/xml >>>xml文件
默认是200 , 也可以自己设置
常用方法
1. set_cokie: 用来设置cookie信息
2. delete_cookie: 用来删除cookie信息
3. write: HttpResponse是一个类似于文件的对象, 可以用来写入数据到数据体content中.