gpt4 book ai didi

javascript - 用 flask 后端 react 路由器

转载 作者:行者123 更新时间:2023-12-03 06:51:25 24 4
gpt4 key购买 nike

我正在构建一个项目,前端为 react,后端为flask。我希望由“create-react-app”创建的应用程序使用带有“react-router-dom”包的前端路由。 index.js 中的相关代码:

<BrowserRouter>
<Switch>
<Route exact path="/" component={Home} />
<Route path="/about" component={About} />
<Route component={Notfound} />
</Switch>
</BrowserRouter>

然后我想通过flask提供它,所以在flask中我有以下设置和路由规则:
app = Flask(__name__, static_folder="../build/static", template_folder="../build")

@app.route('/', defaults={'path': ''})
def serve(path):
render_template("index.html")

index.html 是用 npm run build 构建的.当我点击导航栏并重定向到 /about , app 返回 404 not found。

浏览器控制台中还有另一个错误,显示: Manifest: Line: 1, column: 1, Unexpected token.
任何帮助表示赞赏。

最佳答案

最好将路由留给一个方-python(在您的情况下为flask)或react。 catch_all从其他评论中建议的flask应用程序路由,应仅用于开发目的,因为通常 react 应用程序只是静态Web应用程序,可以与通用http服务器(如生产中的nginx或apache)一起提供服务。如果您使用 flask 的 catch_all在生产中的替代方案最终会浪费资源,因为可以直接从 http 服务器处理相同的请求,而不是从 wsgi 服务器收集响应。就像A,B和C在说话,A想调用C,他可以直接调用C,但是他没有这样做,而是让B调用C,C回复B,然后B将回复转给A。完全没有必要资源使用。此外,如果您开始/尝试混合 flask 和 react 的路由,它会变得非常困惑。使用一个。

关于javascript - 用 flask 后端 react 路由器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57058249/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com