0
我有一個現有的Flask網絡應用程序,我想將一個現有的Dash應用程序(a Plotly Flask app)加入其中。作爲Flask's documentation recommends,我使用DispatcherMiddleware
正是如此來實現這一目標:Flask的DispatcherMiddleware與Plotly的破折號不搭配很好
flask_app = Flask(__name__) # App with both apps attached to it
app = Flask(__name__) # Existing Flask App
dash_app = Dash(__name__) # Dash app
dash_app.config.supress_callback_exceptions = True
# Use DispatcherMiddleware to route separate apps into one
flask_app.wsgi_app = DispatcherMiddleware(app, {'/dash': dash_app.server})
我們最終運行flask_app
:
if __name__ == "__main__":
flask_app.run(debug=True)
然而,當我前往127.0.0.1:<port>/dash/
,我得到以下錯誤出現在網頁:
我看到CONSO以下日誌:
127.0.0.1 - - [30/Aug/2017 11:11:02] "GET /dash HTTP/1.1" 301 -
127.0.0.1 - - [30/Aug/2017 11:11:02] "GET /dash/ HTTP/1.1" 200 -
127.0.0.1 - - [30/Aug/2017 11:11:03] "GET /_dash-layout HTTP/1.1" 404 -
127.0.0.1 - - [30/Aug/2017 11:11:03] "GET /_dash-dependencies HTTP/1.1" 404
我怎樣才能讓我的Dash應用程序正確加載佈局?
謝謝回答。這是有道理的,但是你能否提供更多關於_why_它的作品的細節?只是好奇。 –
從代碼中,dash_dependencies在服務器根目錄('/')中'留下',而不是移動到應用程序駐留的路徑'/ dash',然後佈局重新排序失敗。使用指定的url_base_pathname將依賴關係移動到指定的路徑。希望它是有道理的! – PeaceLeka