关于Axios请求JavaWeb(SpringMVC)参数接收问题

    
data1:{id:9}
test2 = ()=>{
        axios.defaults.baseURL = 'http://localhost:8080';
        axios.post("/test2",qs.stringify(this.state.data1))
          .then((res)=>{
              console.log(res)
          })
          .catch((e)=>{
            console.log(e);
          });
    }
    @RequestMapping("/test2")
    @CrossOrigin
    public String testGetStudentById(Integer id){

        if(id==null){
            System.out.println("NULLLLLLLLLLLLLLLLLLLLLLLLL");
            return null;
        }
        else{
            System.out.println("=--=---------------");
            Student a = studentService.getStudentById(id);

            return JSON.toJSONString(a);
        }

    }

需要注意问题:

1.axios可以设置默认请求路径  axios.defaults.baseURL = 'http://localhost:8080',之后的url只需要拼接就好

2.axios提交参数参数列表需要 Stringify,后端才能以方法参数的形式获取,我这里使用qsStringify()方法。

3.解决跨域问题,在方法前加上注解   @CrossOrigin  。

 

实例 :Java SpringMVC + React

上一篇:get 请求传递参数类型为数组或者对象的处理


下一篇:vue项目使用深拷贝