【问题标题】:how to combine or integrate reactjs and Djangoreactjs和django如何结合或集成
【发布时间】:2020-08-20 04:06:29
【问题描述】:
我在 Reactjs 中创建了前端,在 Django 中创建了后端,并使用 Django rest API 进行链接。但是 react 在 localhost:3000 中运行,而 Django 在 localhost:8000 中运行。如何将这两者结合或整合并在同一个地址运行。
【问题讨论】:
标签:
django
reactjs
django-rest-framework
django-templates
react-router
【解决方案1】:
发展
如果您处于开发阶段并使用Create React App,那么您可以将"proxy": "http://localhost:8000" 添加到您的package.json。然后你在 React 中完成的 api 请求将被转发到端口 8000。
生产
生产设置完全不同。你会想要运行yarn build 并让Django 本身或nginx 为index.html 提供服务。在这种情况下,将不再有多个端口,因为 React 构建只是静态文件。
当我们使用同一个堆栈 (GitHub) 交谈时,我正在创建一个示例真实世界项目。它还没有完全准备好生产设置,但如果你想要一些灵感,可以查看我的开发设置。
【解决方案2】:
您需要使用您在后端创建的路由来链接它们。将路由放入 React 前端的 fetch 请求中,并通过 GET 或 POST 方法等调用它们。一旦您将应用程序部署到服务器,您的用户只会点击前端主机地址。