zoukankan      html  css  js  c++  java
  • 解决react跨域的两种代理配置

    react两种代理配置

    在项目文件夹中按以下路径找到devServer.js文件。进行代理配置

    node_modules>react-scripts>config>devServer.js

        proxy:{
            "/api":{
                target:"http://47.96.0.221:9000",
                changeOrigin:true,
                pathRewrite:{
                "^/api":""
                }
            }
        }
    

    但是这种方法后续安装新的模块的时候,内部yarn.lock文件实时的检测node_modules下面的文件是否手动的 更改过,如果更改的话,重新变成初始状态。

    解决方案一:

    可以通过 yarn eject 进行react-scripts相关配置文件的抽离操作。
    找到文件夹中的git文件删除(找不到的话可能隐藏了,在文件夹设置中选择显示)

    git初始化提交

          git init
          git add .
          git commit -m "first commit"
          git push origin master
    

    再去控制台输入命令 yarn eject Y ,抽离出来后,出现了如下所示的文件夹:在下图中标红的部分进行代理配置

    第二种方案:

    在项目文件中输入以下指令

    yarn add http-proxy-middleware

    在src下创建个setupProxy.js文件(名字只能是这个)

    在文件夹进行如下配置

    const { createProxyMiddleware } = require('http-proxy-middleware');
    module.exports = function(app){
        app.use(
            "/api",
            createProxyMiddleware({
                 target: 'http://47.96.0.221:9000', 
                 changeOrigin: true , 
                 pathRewrite:{ "^/api":"" } 
            })
        )
    }
    
    请用今天的努力,让明天没有遗憾。
  • 相关阅读:
    css3 transform语法
    自我规范(待增加)
    对于闭包的自我理解
    canvas教程没讲的细节
    react新手教程井字棋游戏
    div自动填满剩余部分(等高布局)
    记录自己以后可能会使用到的想法
    Python__list 常用操作
    Python基础语法(四)-- 函数
    Python基础语法(三)-- 循环
  • 原文地址:https://www.cnblogs.com/cupid10/p/13609418.html
Copyright © 2011-2022 走看看