关于前端各种415,400以及传json对象的问题

首先是正确的代码片

 var test = {"menuid":"40","qxid":"50"};
                $.ajax( {
                    url : "${pageContext.request.contextPath}/jsqx/add.do", //所需要的列表接口地址  
                    type : "POST",  
                    dataType : "json",  
                    contentType:'application/json',
                    data:JSON.stringify(test),
                    success : function(result) { 

                    }
                })

后端

@RequestMapping("/add")
    @ResponseBody
    public Map<String, Object> AddQxJs (@RequestBody Permission per){
    Map<String, Object> map = new HashMap<String, Object>();
    System.out.println(per.getMenuid());
    map.put("test", "test");
    return map ;
    }

这里其实注意3点就好,第一点就是一定要注意传入json的格式,key值需要加上双引号,正常的json传key是没有双引号的,如果忘加则415类型错误,然后就是类型, contentType传出格式需要定义,JSON.stringify转换json也一定需要加上,不然400,错误数据。第三点就是后端和前端传入对象的参数类型要一致,希望自己以后一点多去注意这些

你可能感兴趣的:(java)