react跨域

本文详细讲解了如何在React项目中通过设置setupProxy.js来配置代理,避免CORS问题,包括安装http-proxy-middleware、配置target、验证代理、URL处理及后端接口测试等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.react跨域

官网链接:https://create-react-app.dev/docs/proxying-api-requests-in-development/

现在市面上的文档都是配置src/setupProxy.js,来源就是官网。

1.npm或cnpm install http-proxy-middleware --save

2.src/setupProxy.js配置

const { createProxyMiddleware } = require('http-proxy-middleware');

module.exports = function (app) {
    app.use(
        '/api',
        createProxyMiddleware({target: 'https://www.baidu.com/abc/def/', changeOrigin: true,pathRewrite: {'^/api': ''}}))
}

解释:将localhost:3000(或其他端口)/api/xxx的请求代理为https://www.baidu.com/abc/def/xxx

这样域名和端口与请求的url一致就不存在cors问题。

注意1.检验代理配置成功没有,可以将/api换成/,代理所有请求。

2.请求的url前不加baseUrl,这样会默认加localhost:3000,然后走代理流程。

3.检查src/setupProxy.js配置里target配置最后是否有/。

4.postman或其他方法检查后端接口是否可以正常访问。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值