我正在使用反应 -redux 开发应用。而且我正在使用快速开发,该开发总是将我的客户端构建在 localhost:3000
上我有用PHP编写的 api ,它在 localhost:80 上。
因此它是跨源的,但是在生产中却不是。所以我想在相同的域和端口上进行开发。但是我不知道如何设置它。
我正在使用MAMP-Apache用于php和yarn(create-react-app)进行反应。
因此它不能在同一端口上运行。
有人知道如何解决这个问题吗?
当我使用“ yarn start”时,我可以编辑我的react代码并在保存时对其进行编译,并且可以在几秒钟内在localhost:3000看到编辑后的代码
是否可以在“开发人员”模式下将其“部署”到某个文件夹中,在其中我可以使用实际的MAMP(apache)来设置服务器?
预先感谢
答案 0 :(得分:1)
如果在应用程序的客户端使用了create-react-app
,则可以在package.json文件中添加代理配置。
"proxy": {
"/apiRoute": {
"target": "http://localhost:80"
},
},
因此,所有请求都将从客户端重定向到端口80(PHP)。
/ apiRoute是您在PHP中定义的路由(GET, POST, PUT..)
的名称。因此,我建议在PHP中为/ api / **之类的所有路由创建一个模式,因此在package.json中而不是添加所有路由,您可以在下面添加类似内容
"proxy": {
"/api/*": {
"target": "http://localhost:80"
},
},