我正在开发一个以Symfony 3.4.*作为后端和React前端的Web应用程序(还有React-Router,Babel,Browserify,Webpack,Jquery,Bootstrap(。
我在 react 的一个组件componentWillMount
下有一个函数,它负责从我从后端(在 Symfony 中(公开的 API 中获取一些数据,它工作正常,但今天我使用这个 API 函数的绝对本地 url。
Symfony应用程序和React应用程序在同一台服务器上。
我应该做哪些更改才能使用 API 函数的相对 URL,以使整个应用程序易于部署到任何主机上?
componentWillMount: function () {
var items;
var self = this;
$.getJSON("http://localhost:8000/api/items", function (data) {
for (items in data) {
self.addItem(data[items]);
}
});
},
编辑
我认为这可以使用FOSJsRoutingBundle来实现。我更喜欢不使用此捆绑包的简单解决方案,但无论如何我都可以使用它来接受答案。
您可以使用一种
var config = JSON.stringify(require('./config.prod.json'));
var endPoint = config.EndPoint;
并将您的配置作为 JSON 置于下。
一个更广泛的答案可能是这样的:https://github.com/facebook/create-react-app/issues/1469#issuecomment-290081143
如果您的客户端和后端在同一台服务器上运行。
只需 $.getJSON("/api/items"( 即可工作