• Flask框架 之abort、自定义错误、视图函数返回值与jsonify


    一、abort函数

      使用abort函数可以立即终止视图函数的执行,并可以返回给前端特定的值。

      abort函数的作用:

      • 1、传递状态码,必须是标准的http状态码
      • 2、传递响应体信息
    @app.route("/login", methods=["POST", "GET"])
    def login():
        name = request.form.get("name")
        password = request.form.get("password")
        if name != "yy" or password != "admin":
            # 使用abort函数可以立即终止视图函数的执行
            # 并可以返回给前端特定的值
            # 1、传递状态码,必须是标准的http状态码
            abort(400)
            # 2、传递响应体信息
            resp = Response("login failed")
            abort(resp)
        return "登录成功"

    二、自定义错误信息

      通过@app.errorhandler(状态码)定义

    @app.errorhandler(404)
    def error_404(error):
        return "您访问的页面不存在!!!错误信息:%s" % error
    
    @app.errorhandler(405)
    def error_405(error):
        return "禁止访问,错误信息:%s" % error

    三、视图返回信息(Response)处理

    # 1、使用元组返回自定义响应信息
    @app.route("/")
    def index():
        #           响应体      状态码  响应头
        # return "hello world", 400,  [("city", "yy")]
        return "this is index", "666 status", {"city": "yy"}

    # 2、使用make_response返回自定义响应信息
    @app.route("/login")
    def login():
        resp = make_response("this is login")
        resp.status = "999 status"
        resp.headers["city"] = "yy"
        return resp

     四、返回json数据

    @app.route("/")
    def index():
        # data = {
        #     "name": "yy",
        #     "age": 18
        # }
        # json_str = json.dumps(data)
        # return json_str, 200, {"Content-type": "application/json"}
        return jsonify(name="yy", age="18")
  • 相关阅读:
    Bootstrap-CL:警告
    Bootstrap-CL:略缩图
    Bootstrap-CL:页面标题
    Bootstrap-CL:超大屏幕
    Bootstrap-CL:徽章
    Bootstrap-CL:标签
    Bootstrap-CL:分页
    Bootstrap-CL:面包屑导航
    Bootstrap-CL:导航栏
    Bootstrap-CL:导航元素
  • 原文地址:https://www.cnblogs.com/yang-2018/p/11012803.html
Copyright © 2020-2023  润新知