首页 > 代码库 > flask配置选项中的TRAP_HTTP_EXCEPTIONS会阻止自动跳转

flask配置选项中的TRAP_HTTP_EXCEPTIONS会阻止自动跳转

参考:http://www.pythondoc.com/flask/config.html

 

Flask 对象的 config 属性。 这是Flask自身放置特定配置的地方,同时也是flask扩展模块放置它们配置值的地方。并且,这里也可以放置你自己的配置。

 

config 实际上是字典的一个子类且能够像字典一样被修改:

app = Flask(__name__)
app.config[‘DEBUG‘] = True

某些配置也被传入到 Flask 对象因此你可以在那里读取它们:

app.debug = True

你能够用 dict.update() 方法一次性地更新多个键值:

app.config.update(
    DEBUG=True,
    SECRET_KEY=‘...‘
)

需要说明的是配置:
TRAP_HTTP_EXCEPTIONS 如果这个值被设置为 True , Flask 不会执行 HTTP 异常的错误处理, 而是像对待其它异常一样,通过异常栈让它冒泡。 这对于需要找出 HTTP 异常源头的调试情形是有用的。
当代码这样书写,注意welcome后面还有一个反斜杠
@auth.route(/welcome/, methods=[GET, POST])
def welcome():

    return render_template(welcome.html)

而当访问的时候不加最后一个反斜杠,访问就会出错

技术分享

 

原因是,默认情况下,0.0.0.0:4000/welcome是可以自动跳转到 0.0.0.0:4000/welcome/的,但是当配置 TRAP_HTTP_EXCEPTIONS=True 时,就不会自动跳转,而是给出错误信息









flask配置选项中的TRAP_HTTP_EXCEPTIONS会阻止自动跳转