浅谈HttpResponse、JsonResponse、Response区别

  1. HttpResponse 返回的content_type默认是text/plain. 并且参数只能是字符串return HttpResponse('{"status":"1"}'),并没有格式化要求, 像这种写法是错误的:在这里插入图片描述
    尽量不要使用.

  2. JsonResponse 是Django默认的json格式响应, 对应content_type=“application/json”, 参数直接传入dict:在这里插入图片描述
    如果视图是视图函数的写法, 就使用JsonResponse.

  3. Response: rest-framework提供的类, 封装的比较好, 并且目前配置的有自动的异常处理, 不会返回500. 但是只能在继承于rest-framework的APIView的视图类中使用. 比较推荐.

用的时候注意下(尽量使用JsonResponse/Response, 不要使用HttpResponse).

你可能感兴趣的:(Django)