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
在浏览器执行请求显示如下: