前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Flask 使用abort方法返回http错误码、http错误响应信息

Flask 使用abort方法返回http错误码、http错误响应信息

作者头像
Devops海洋的渔夫
修改2019-11-21 23:56:36
2.9K0
修改2019-11-21 23:56:36
举报
文章被收录于专栏:Devops专栏

abort方法使用场景

在api开发中,当视图处理http请求的时候会出现错误的情况。当发现这种情况,如果需要返回http错误码给浏览器,或者错误响应信息,这时候就可以使用abort()方法了。

abort方法的引入

代码语言:javascript
复制
from flask import abort

abort 方法示例

下面我编写一个登录的login处理视图函数,设置一个必定会错误的情况,并且分别设置返回错误码、错误响应信息的情况。

abort 返回错误码示例

代码语言:javascript
复制
from flask import Flask, request, abort

# 实例化app
app = Flask(import_name=__name__)

@app.route('/login', methods=["GET","POST"])
def login():

    user_name = ''
    user_pwd = ''

    if user_name != 'libai' and user_pwd != '123':
        abort(404) # 返回http错误码 404 503 500

    return "login sucess"

if __name__ == '__main__':
    app.run(debug=True)

要注意,abort返回的错误码必须是标准http错误码。 下面使用浏览器访问看看,如下:

可以看到返回的就是404的错误信息,下面将错误码改为500看看,如下:

使用abort直接返回错误码是最常用的情况,另外还有返回错误信息内容的情况。

abort 返回错误信息示例

代码语言:javascript
复制
from flask import Flask, request, abort, Response

# 实例化app
app = Flask(import_name=__name__)

@app.route('/login', methods=["GET","POST"])
def login():

    user_name = ''
    user_pwd = ''

    if user_name != 'libai' and user_pwd != '123':
        res = Response('login fail')
        abort(res) # 返回错误信息

    return "login sucess"

if __name__ == '__main__':
    app.run(debug=True)

在使用错误信息还需要引入Response,如下:

代码语言:javascript
复制
from flask import Response

在浏览器执行请求显示如下:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • abort方法使用场景
  • abort方法的引入
  • abort 方法示例
    • abort 返回错误码示例
      • abort 返回错误信息示例
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档