HttpResponse响应、render 响应、redirect 响应、JsonResponse 响应

目录

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介绍

常用属性

content: 返回的内容

也可以在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

HttpResponse响应、render 响应、redirect 响应、JsonResponse 响应_第1张图片 content_type:返回给数据的MIME类型

默认为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文件

HttpResponse响应、render 响应、redirect 响应、JsonResponse 响应_第2张图片

 status_code: 返回的HTTP响应状态码

默认是200 , 也可以自己设置

常用方法

1. set_cokie:  用来设置cookie信息

2. delete_cookie: 用来删除cookie信息

3. write: HttpResponse是一个类似于文件的对象, 可以用来写入数据到数据体content中. 

HttpResponse响应、render 响应、redirect 响应、JsonResponse 响应_第3张图片

你可能感兴趣的:(Django,django,python,后端)