当前位置: 首页 > news >正文

react中使用nextjs框架,前端调后端接口跨域解决方式

前端在项目目录中next.config.js文件中添加以下代码

async rewrites() {return [{source: "/api/:path*",destination: `${process.env.NEXT_PUBLIC_API_DOMAIN}/api/:path*`,basePath: false}]}

截图:

  • source: "/api/:path*": 定义了一个 URL 模式,匹配所有以 /api/ 开头的请求,并将 :path* 作为一个通配符来匹配其后的路径部分。

  • destination: "${process.env.NEXT_PUBLIC_API_DOMAIN}/api/:path*": 将匹配的请求代理到 NEXT_PUBLIC_API_DOMAIN 所定义的后端 API。process.env.NEXT_PUBLIC_API_DOMAIN 是一个环境变量,通常在 .env 文件中定义。例如,如果 NEXT_PUBLIC_API_DOMAIN (后端接口ip:端口)的值是 https://api.example.com,那么请求 http://localhost:3000/api/users 就会被代理到 https://api.example.com/api/users

  • basePath: false: 禁用 basePath,确保重写规则不受 basePath 配置的影响。

注意:不要配置axios的baseURL,让其默认是localhost:xxx地址请求接口,它会转发到${process.env.NEXT_PUBLIC_API_DOMAIN}/api/:path*地址

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 从0开始搭建vue + flask 旅游景点数据分析系统(十一):登录、注册页面、未登录拦截、注销逻辑
  • 信息学奥赛一本通1259:【例9.3】求最长不下降序列
  • 浙大数据结构慕课课后题(04-树6 Complete Binary Search Tree)
  • linux上常见问题
  • 基于深度学习的迁移学习
  • 克服编程学习中的挫败感,收获满满的成就感
  • 打造智能工厂:基于嵌入式 C++、Qt/QML 和 MQTT 的车间设备远程监控系统(代码示例)
  • Qt —— 创建 hello world
  • STM32标准库学习笔记-4.定时器中断
  • 前端css动画transform多个属性值写法
  • #Datawhale AI夏令营第4期#多模态大模型复盘
  • 象棋布局笔记
  • 四天倒计时,SETTA会议你准备好了吗?
  • #Datawhale AI夏令营第4期#AIGC文生图方向复盘
  • STM32标准库学习笔记-9.DMA 直接存储器存取
  • 实现windows 窗体的自己画,网上摘抄的,学习了
  • Babel配置的不完全指南
  • flask接收请求并推入栈
  • PHP的Ev教程三(Periodic watcher)
  • python学习笔记 - ThreadLocal
  • Redis学习笔记 - pipline(流水线、管道)
  • Vue 2.3、2.4 知识点小结
  • vue-router 实现分析
  • 成为一名优秀的Developer的书单
  • 从重复到重用
  • 蓝海存储开关机注意事项总结
  • 如何合理的规划jvm性能调优
  • 无服务器化是企业 IT 架构的未来吗?
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • ​决定德拉瓦州地区版图的关键历史事件
  • (补充):java各种进制、原码、反码、补码和文本、图像、音频在计算机中的存储方式
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (二十六)Java 数据结构
  • (附源码)springboot车辆管理系统 毕业设计 031034
  • (附源码)计算机毕业设计SSM保险客户管理系统
  • (力扣记录)235. 二叉搜索树的最近公共祖先
  • (一) springboot详细介绍
  • (转)母版页和相对路径
  • .net core 控制台应用程序读取配置文件app.config
  • .net 提取注释生成API文档 帮助文档
  • .Net高阶异常处理第二篇~~ dump进阶之MiniDumpWriter
  • .NET微信公众号开发-2.0创建自定义菜单
  • .Net中ListT 泛型转成DataTable、DataSet
  • //TODO 注释的作用
  • @Async注解的坑,小心
  • @Repository 注解
  • @在php中起什么作用?
  • [ Linux 长征路第五篇 ] make/Makefile Linux项目自动化创建工具
  • [001-03-007].第07节:Redis中的管道
  • [20160807][系统设计的三次迭代]
  • [20181219]script使用小技巧.txt
  • [2023-年度总结]凡是过往,皆为序章
  • [c++] 单例模式 + cyberrt TimingWheel 单例分析
  • [CentOs7]搭建ftp服务器(2)——添加用户
  • [Deepin] 简单使用 RustDesk 实现远程访问Deepin