React配置代理(proxy)

简介: React配置代理(proxy)

使用axios进行请求,而配置代理过程。

 

第一种


在package.json中,添加proxy配置项,之后所有的请求都会指向该地址

但这种方法只能配置一次,也只有一个

示例:

"proxy":"https://localhost:5000"


添加后,重启项目!!!让配置文件加载生效

然后就可以进行请求了

比如请求地址是 http://localhost:5000/api/index/index

那就可以写

axios.get("/api/index/index").then(
  response => {console.log('成功了',response.data);},
  error => {console.log('失败了',error);}
)


第二种


src中,新建setupProxy.js(必须是这个名字,react脚手架会识别),在文件中写以下配置内容(最近的项目要使用高版本这个,不然会导致项目无法启动):

http-proxy-middleware高版本(2以上):

const proxy = require('http-proxy-middleware')//引入http-proxy-middleware,react脚手架已经安装
module.exports = function(app){
  app.use(
    proxy.createProxyMiddleware('/api',{ //遇见/api1前缀的请求,就会触发该代理配置
      target:'http://localhost:5000', //请求转发给谁
      changeOrigin:true,//控制服务器收到的请求头中Host的值
      pathRewrite:{'^/api':''} //重写请求路径,下面有示例解释
    }),
    proxy.createProxyMiddleware('/api2',{
      target:'http://localhost:5001',
      changeOrigin:true,
      pathRewrite:{'^/api2':''}
    }),
  )
}


http-proxy-middleware低版本(2以下):

const proxy = require('http-proxy-middleware')//引入http-proxy-middleware,react脚手架已经安装
module.exports = function(app){
  app.use(
    proxy('/api',{ //遇见/api1前缀的请求,就会触发该代理配置
      target:'http://localhost:5000', //请求转发给谁
      changeOrigin:true,//控制服务器收到的请求头中Host的值
      pathRewrite:{'^/api':''} //重写请求路径,下面有示例解释
    }),
    proxy('/api2',{
      target:'http://localhost:5001',
      changeOrigin:true,
      pathRewrite:{'^/api2':''}
    }),
  )
}


写好以后,重启项目!!!

然后进行请求

假设地址是 http://localhost:5000/api/index/index

//没有开启重新路径
axios.get("/api/index/index").then(
  response => {console.log('成功了',response.data);},
  error => {console.log('失败了',error);}
)
//开启重写路径
axios.get("/api/api/index/index").then(
  response => {console.log('成功了',response.data);},
  error => {console.log('失败了',error);}
)


相关文章
|
6月前
create-react-app配置环境变量
create-react-app配置环境变量
150 0
|
2月前
|
前端开发
react配置proxy代理的两种方式
本文介绍了在React项目中配置代理的两种方式:通过在package.json中添加代理配置,以及通过创建setupProxy.js文件来实现更复杂的代理规则。
79 2
|
6月前
|
前端开发 API
react如何进行项目配置代理
react如何进行项目配置代理
139 0
|
6月前
|
存储 资源调度 前端开发
【React | 完整项目创建流程】能看到这么详细的React配置流程,就偷着乐吧!
【React | 完整项目创建流程】能看到这么详细的React配置流程,就偷着乐吧!
205 1
|
6月前
|
缓存 前端开发 JavaScript
第二十八章 React脚手架配置代理
第二十八章 React脚手架配置代理
|
6月前
|
前端开发 API
React配置代理(proxy)
React配置代理(proxy)
|
6月前
|
前端开发 API
react项目配置代理
react项目配置代理
115 0
|
6月前
|
设计模式 前端开发 数据可视化
【第4期】一文了解React UI 组件库
【第4期】一文了解React UI 组件库
342 0
|
6月前
|
资源调度 前端开发 JavaScript
React 的antd-mobile 组件库,嵌套路由
React 的antd-mobile 组件库,嵌套路由
115 0