当前位置: 移动技术网 > IT编程>开发语言>JavaScript > springboot +element-axios跨域请求

springboot +element-axios跨域请求

2018年09月13日  | 移动技术网IT编程  | 我要评论

1、初始化element项目
  1.1:vue init webpage '项目名称'


  1.2:npm i element-ui -s


  1.3:在main.js添加
  

import elementui from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
vue.use(elementui)

 

2、添加axios跨域请求

  在main.js中添加
  

/**
  * 跨域设置
  * @type {axiosstatic}
  */
  import axios from 'axios'
  vue.prototype.$axios = axios
  vue.config.productiontip = false
  axios.defaults.withcredentials = false//这个默认即为false,如果改为true,可以传递session信息,后端要做相应修改来放行,

 

3、创建页面

<template>
  <el-button @click="post">发送请求</el-button>
</template>

<script>
  import axios from "axios";
  export default {

    data() {
      return {
        activeindex2: '1'
      };
    },
    methods: {
      handleselect(key, keypath) {
        console.log(key, keypath);
      },
      post(){
        axios.get('http://localhost:8080/test')
          .then(function (response) {
            console.log(response,"已经成功发送请求!");
          })
          .catch(function (error) {
            console.log("请求失败!");
          });
      }


    }
  }
</script>

 

4、创建springboot项目

  4.1添加一个controller类

@controller
@crossorigin
public class testcontroller {


    @requestmapping("/test")
    @responsebody
    public jsonresponseext test(){
        system.out.println("在执行~~~~~~~~~");
        return jsonresponseext.success("执行");
    }

}
jsonresponseext是我自己封装的一个类,你们可以直接返回一个对象或者字符串也是可以的
另外,在controller类里要添加@crossorigin注解,否则前端返回结果会报错

   你也可以自己封装一个配置类例如

@configuration
public class corsconfig  extends webmvcconfigureradapter {

    @override
    public void addcorsmappings(corsregistry registry) {
        system.out.println("----------------------");
        registry.addmapping("/**")
                .allowedorigins("*")
                .allowcredentials(true)
                .allowedmethods("get", "post", "delete", "put")
                .maxage(3600);
    }


}

5、测试结果

 



                    

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网