zoukankan      html  css  js  c++  java
  • django返回响应对象

    Django的视图必须要返回一个HttpResponse对象(或者其子类对象),不能像flask一样直接返回字符串。

    Django:

    return HttpResponse("Hello")

    Flask:

    return "Hello"

    1.HttpResponse:

    (1)构造响应对象

    HttpResponse(content=响应体,content_type=响应体数据MIME类型,status=状态码)

    MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型:

    • text/html html
    • text/plain 普通文本
    • application/json json

    • ...

      content_type 不指定默认值为:text/html; charset=utf-8

    (2)响应头设置:为HttpResponse对象设置响应头

    response = HttpResponse('响应内容')

    response['id'] = 'abcd'    # 自定义响应头

     

    2.JsonResponse对象

    JsonResponse是HttpResponse的子类。

    JsonResponse有两个功能:

    (1)将数据转换为json字符串,再返回给客户端

    (2)自动设置响应头Content-Type为application/json

    示例:

    def index(request):
        a = {"id":123,"category":999}
        return JsonResponse(a)

    同样的,JsonResponse也可以接受非字典数据,只需要指定safe=False即可。

    def index(request):
        a = "123"  # 列表也可以
        return JsonResponse(a,safe=False)

    除了JsonResponse,Django还提供了很多子类,可以快递设置状态码。这里就不一一说了。

    • HttpResponseRedirect 302
    • HttpResponseNotModified 304
    • HttpResponseBadRequest 400
    • HttpResponseNotFound 404
    • HttpResponseForbidden 403
    • HttpResponseNotAllowed 405
    • HttpResponseServerError 500
  • 相关阅读:
    Oracle的启动过程共经历四个阶段:
    Oracle数据库启动原理
    Oracle LISTENER监听文件参数详解及Lsnrctl命令综述
    Oracle TNS简述
    linux 各级目录的作用
    oracle 监听器的工作原理
    插入标识列
    sql server日期格式转换方法大全
    html获取输入的值的问题
    关闭窗口 不弹出提示
  • 原文地址:https://www.cnblogs.com/chichung/p/9879538.html
Copyright © 2011-2022 走看看