以下代码status正常显示204,为什么浏览器页面显示文本404,而不是304?

以下代码status正常显示204,为什么浏览器页面显示文本404,而不是304?

# 查看响应状态码
def print_attr(request):
   resp = HttpResponse('响应对象', status=404)
   # 重新设置http的状态码
   resp.status_code = 304
   return HttpResponse(content=resp.status_code, status=204)

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
提问者 慕的地7544270 2020-10-17 10:56:11

def print_attr(request):

    resp = HttpResponse('响应对象', status=404)

    # 重新设置http的状态码

    resp.status_code = 304

    return HttpResponse(content=resp.status_code, status=200)

老师我又仔细验证了一下,当最后一行返回时设置status=200, 倒数第二行resp.status_code 等于多少都能正常显示文本。

当最后一行返回时设置status=204, 倒数第二行resp.status_code 等于多少都不能正常显示,只会停留在最后一次正常显示的值(我的截图这里是404)。

这是为什么?

http://img1.sycdn.imooc.com//climg/5f8a5c1c09bd287308310703.jpg

http://img1.sycdn.imooc.com//climg/5f8a5c1c097596e808300698.jpg


  • 同学,你好。204表示请求收到,但返回信息为空,因此没有看到返回的信息。同学根据视频讲解会修改状态码即可。祝学习愉快~~~~
    2020-10-19 09:46:01
好帮手慕美 2020-10-12 13:43:06

同学,你好。

1、最后一行代码中在HttpResponse()中设置了status的值为204,因此显示的是204。

http://img1.sycdn.imooc.com//climg/5f83ec380978ee9208440067.jpg

如果我的回答解决了你的疑惑,请采纳!祝学习愉快~~~~

为学习而奋斗 2020-10-11 23:36:52

同学,您好:
def print_attr(request):
   resp = HttpResponse('响应对象', status=404)
   # 重新设置http的状态码
   resp.status_code = 304
   return HttpResponse(content=resp.status_code, status=204)

这段代码稍微修改一下,如果要显示204的话直接就是
def print_attr(request):
   resp = HttpResponse('响应对象', status=204)
   return resp

若要显示为304 直接就是
def print_attr(request):
   resp = HttpResponse('响应对象')
   # 重新设置http的状态码
   resp.status_code = 304
   return resp

若要显示为404,直接就是
def print_attr(request):
   resp = HttpResponse('响应对象', status=404)
   return resp

  • 若我的回答解决了同学的疑惑请采纳!祝学习愉快~
    2020-10-11 23:37:39
  • 不好意思,我题目没看清楚,我后面再看一下
    2020-10-11 23:39:45
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
3.从网页搭建入门Python Web
  • 参与学习           人
  • 提交作业       218    份
  • 解答问题       3562    个

本阶段带你用Python开发一个网站,学习主流框架Django+Flask是Python Web开发的第一步,在基础知识上实现积分商城的项目开发,体验真实的项目开发流程,提高解决编程问题和效率的能力。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师