我正在使用React构建Flask应用,但遇到了路由问题。
后端负责作为API,因此一些路由看起来像:
@app.route('/api/v1/do-something/', methods=["GET"])
def do_something():
return something()
以及通往React的主要路径:
@app.route('/')
def index():
return render_template('index.html')
我在 React 应用中使用了 react-router,一切都工作得很好,react-router 带我去了 /something
并渲染了视图,但是当我在 /something
上刷新页面时,Flask 应用将处理这个请求,我收到了 Not Found
错误。
最好的解决方案是什么?我考虑将所有没有调用 /api/v1/...
的请求重定向到 /
,但这并不理想,因为我会得到我的应用程序主页,而不是渲染后的React视图。
/#/something
,并且重新加载它们将始终触发后端上的/
视图。否则,您需要在后端处理请求或将其重定向到React应用程序,然后分析请求并在请求的URL不是/
时触发位置更改。 - sthzg#something
通过react-router而不是flask。如果URL基于某些模式,则这可能是一种有效的解决方案,否则就是浪费时间。 - Pralhad Narsinh Sonar