【问题标题】:Server error handling (404, 403 etc.) in plotly dash破折号中的服务器错误处理(404、403 等)
【发布时间】:2019-09-20 12:46:29
【问题描述】:

我正在运行一个通过 flask-login 进行身份验证的 dash 应用程序,它在一些安全测试期间出现,当身份验证和/或权限检查失败时,该应用程序不会产生正确的错误。

到目前为止,我所做的只是在权限检查失败时在回调中返回“403”,但当然 dash 会修改这些以适应其自己的 API。

因此,我得到的不是适当的错误,而是带有这样的 JSON 响应的 200:{"response": {"props": {"displayed": "403"}}},或者如果 Dash API 无法处理“403”字符串,我得到一个 500。

【问题讨论】:

标签: python http flask plotly-dash flask-login


【解决方案1】:

经过对flask的一些研究,最合适的解决方案似乎是使用flask的Response发送服务器错误代码,然后在回调中做任何你认为合适的事情,例如:

if not current_user.authenticated:
    Response('Not permitted', 403)
    return html.Div('Not permitted')

if not current_user.authenticated:
    Response('Not permitted', 403)
    raise PreventUpdate

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-20
    • 1970-01-01
    • 1970-01-01
    • 2023-01-17
    • 2019-08-09
    • 2019-07-02
    • 1970-01-01
    相关资源
    最近更新 更多