React使用代理解决跨域问题

时间:2022-07-23
本文章向大家介绍React使用代理解决跨域问题,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

这次又遇到跨域问题,大佬推荐我用跨域代理来解决 本文仅限使用creat-react-app来创建的项目 参考文档:https://facebook.github.io/create-react-app/docs/proxying-api-requests-in-development#docsNav

1.解决跨域的方法

文档中提到

2.跨域代理解决

在package.json中 假如这句话即可

"proxy":"http://localhost:8080"

如下图

图片.png

3.请求

请求的时候,就不用带域名了

例如,这样即可

图片.png

4.进一步设置

修改 proxy 的配置,以后开发环境请求如果以 /api 前缀,才会走代理,比如 fetch('/api/foobar'),会自动变成 'http://localhost:8080/foobar'

  "proxy": {
    "/api": {
      "target": "http://localhost:8080",
      "pathRewrite": {
        "^/api" : ""
      },
      "changeOrigin": true
    }
  }