利用服务器与服务器之间是不存在跨域的,就可以向我们自己的服务器发起请求,然后让我们的服务器去向资源所在的服务器去请求数据!!!
在 create-react-app脚手架中,已经给我们内置封装好了,我们只需要做简单的配置就行!!!
(1) 安装跨域的插件
- npm i http-proxy-middleware --save
(2) 在 src 目录下创建 setupProxy.js 文件
-
引入插件
- const {createProxyMiddleware} = require( 'http-proxy-middleware' )
-
进行配置
1.
'ajax' 表示,该插件会对我们发起的所有请求,进行地址检验,凡是以 ajax 开头的(此时我们以为是向自己发的,因为没有前面的域名),都会进行拦截,然后在该地址前面加上 2. 处 target 的完整的域名!!然后中间件帮我们进行转发,发起请求!!!
不加前面的完整的域名,则会认为是向自己的本地服务器发起请求!!然后我们的中间件就会进行拦截!!
注意:
- 反向代理可以配置多个!!
- 每次进行完配置后,都需要重启项目,反向代理才能运行起来!!!