IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    Flask入门学习(八):使用abort函数主动抛出异常

    52txr发表于 2024-07-22 22:53:00
    love 0

    在使用Flask开发Web应用时,我们经常需要处理各种请求并返回相应的响应。通常情况下,我们会返回一个正常的响应,但在某些情况下,我们可能需要返回一个错误响应。Flask为我们提供了一个非常方便的方法——abort函数,用于主动抛出异常并返回相应的HTTP状态码。

    abort函数

    在网页中主动抛出异常。类似python基础里的raise功能。

    abort函数是Flask中用于中断请求处理的一个工具。使用abort函数,你可以在请求处理过程中主动抛出一个HTTP异常,从而返回指定的错误状态码和错误信息。常见的状态码包括:

    • 400: Bad Request
    • 401: Unauthorized
    • 403: Forbidden
    • 404: Not Found
    • 500: Internal Server Error

    通过使用abort函数,可以在处理请求的过程中更加灵活地应对各种异常情况,并向客户端返回适当的错误信息。

    使用示例

    from flask import Flask, abort
    
    app = Flask(__name__)
    
    @app.route('/index', methods=['GET', 'POST'])
    def index():
        abort(404)  # 返回一个404
        return "123"
    
    
    if __name__ == "__main__":
        app.run()

    abort函数使用示例

    下面结合之前的表单进行一个demo示例,例如根据输入的内容进行返回状态:

    from flask import Flask, abort, request,make_response,render_template
    
    app = Flask(__name__)
    
    @app.route('/index', methods=['GET', 'POST'])
    def index():
        if request.method == 'GET':
            return render_template("index.html")
        # 获取输入的账号密码
        if request.method == 'POST':
            name = request.form.get('name')
            password = request.form.get('password')
            if name == 'admin' and password == 'admin123':
                return '登录成功'
            else:
                abort(403)
    
    if __name__ == "__main__":
        app.run()

    运行结果:

    与登陆页面配合使用的示例



沪ICP备19023445号-2号
友情链接