flask返回的Response类型对象

在flask中你想向前端返回数据,必须是Response的对象,这里和django必须是HttpResponse 对象一样。

from flask import Flask,Response,make_response

return直接返回

make_response+return返回。

Response+return返回。

jsonify+return返回。

render_template+return返回

 

 

return返回

return json.dumps({"a":1,"b"2})  #转化为json格式字符串返回(本质还是字符串一样,并不是真的json对象) 

return "hello world"                     #直接返回字符串

return 'index.html',200,{"key":"value"}   #返回字符串,转态码,请求头

 

return后面的值说明:index.html 表示字符串,也就是网站页面显示的内容

​ '200 ok' 表示状态码和对状态码的解析

​ {"name":"aaa"} 表示请求头

请求头不是必须要的,但是前面两个必须要,前提你是retrun多个值,还有就是顺序不能改变。

 

 

 

 

make_response对象

response=make_response(内容data参数,状态码参数,请求头参数)  #内容data默认参数为"",不是None,状态码默认为200.

1.

response=make_response('hello')     #自定义内容,默认状态码

return reponse       #封装字符串返回

2.

response = make_response('page_two page', 200)    #自定义内容和状态码

return response

3.

response = make_response('page_four page', 200, {"name": "page four"})   #自定义内容状态码和请求头

return response

4.

response = make_response('page_three page')    

return response, 200, {"name": "page_three"}

 

 

 

 

 

josnify:

如果是返回json格式:'content-type': 'application/json'

默认是:'content-type':  'text/html'

return jsonify({"name":"abc"})

 

 

 

reponse对象:Response中的几个常见属性

1.headers:请求头相关
2.status : String类型的数据,格式例如:“200 ok”
3.status_code : int 类型,状态码,不能是自定义的状态码
4.data : 需要返回到前端的数据(任意数据类型)
5.set_cookie() :设置cookie 的值
6.del_cookie() :删除cookie

 

response = Response()

response.data = "html_page"    #或直接response = Response("html_page")代替上面两句话

response.status_code = 299   #设置状态码

response.status = "298 notok"  #设置状态

return response, "297 okok", {"name": "page fiv"}  #返回数据

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值