axios 请求跨域问题

文章目录

  • [1. 使用场景](#1. 使用场景)
  • [2. 解决办法](#2. 解决办法)

1. 使用场景

① 编写后端测试接口,Vue-CLI 的默认端口为 8080,所以为避免端口冲突,我们后端的端口号换成 8081。

② 前端通过 axios 向后端服务发起请求。

html 复制代码
<script>
import axios from 'axios'
export default {
  created() {
    axios({
      url: 'http://localhost:8081/api1/test',
      params: {
        id: 1
      }
    }).then(res => {
      console.log(res)
    })
  }
}
</script>

③ 发起请求,发现前端报错。

本质上,前端的端口是 8080,而后端的端口是 8081,域名不一样,它们是无法进行正常交流的,自然就会报错,这时候就涉及到请求跨域的问题。

2. 解决办法

在后端接口中添加允许跨域的注解,表示允许 8080 向该服务发起请求。

javascript 复制代码
@CrossOrigin(value = "http://localhost:8080")
相关推荐
谢尔登1 小时前
Vue3 响应式系统——computed 和 watch
前端·架构
愚公移码1 小时前
蓝凌EKP产品:主文档权限机制浅析
java·前端·数据库·蓝凌
欣然~3 小时前
法律案例 PDF 批量转 TXT 工具代码
linux·前端·python
一个小废渣3 小时前
Flutter Web端网络请求跨域错误解决方法
前端·flutter
符文师4 小时前
css3 新特性
前端·css3
ct9784 小时前
WebGL开发
前端·gis·webgl
C_心欲无痕4 小时前
前端页面渲染方式:CSR、SSR、SSG
前端
果粒蹬i5 小时前
生成式 AI 质量控制:幻觉抑制与 RLHF 对齐技术详解
前端·人工智能·easyui
WordPress学习笔记6 小时前
解决Bootstrap下拉菜单一级链接无法点击的问题
前端·bootstrap·html
Never_Satisfied6 小时前
C#插值字符串中大括号表示方法
前端·c#