vue axios springboot2.0 跨域请求

博主尝试网上教程解决问题无果后,改用配置服务端方法。后端在controller上加CrossOrigin注解,前端新建vue - cli项目,安装axios并在main.js和调用页面写入代码,重点在于springboot里的CrossOrigin注解实现前后端通讯。

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

试了网上很多的教程,包括添加代理等等,均无功而返,还是提示403。
于是,改用配置服务端的方法。

后端
  • 直接在controller上加CrossOrigin注解
@CrossOrigin		//重要
@RestController
@RequestMapping("vue")
public class VueApi {
    @RequestMapping("test")
    public Object test(@RequestBody JSONObject o){
    	System.out.println(o.toJSONString());
    	return o;
    }
}
前端
  • 新建一个vue-cli项目
  • 安装axios 命令:npm install axios
  • 在main.js中加入
    import axios from 'axios'
    Vue.prototype.$axios = axios
  • 在需要调用的页面写入代码 例如:
<template>
  <div class="hello">
    <button @click="requestTest()">发送请求</button>
  </div>
</template>
<script>
export default {
  methods: {
    requestTest() {
      //第一个参数是请求地址,对应你后台服务的地址,第二个参数是数据,这里发送一个json
      this.$axios.post("http://127.0.0.1:8281/vue-test/vue/test",{
        name:"goat"
      }).then(response => {
      	//其中response包含所有信息(状态,头等等),response.data则是服务端发回的数据信息
        console.log(response.data);
      });
    }
  }
};
</script>
  • npm run dev 现在试试点击按钮实现前后端通讯
    此交互环节重点是springboot里的CrossOrigin注解
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值