您的位置:首页 > 其它

ajax 使用中问题汇总

2016-02-24 17:52 267 查看
POST--JSON请求例子

controll层:

@ResponseBody
public Map TEST(@RequestBody Map reqMap){

}

$.ajax({
    type: 'post',
    url: "xxx",
    contentType:"application/json",
    async:false,
    data:JSON.stringify({"name":"123"}),
    dataType:"JSON",   //返回的数据转成json对象,也就是不需要我们parse了
    success: function(data){
        alert(data.name);
    },
    error: function(xhr, type){
        alert('数据加载失败');
    }
});

1. 415 (Unsupported Media Type 

增加:  contentType:"application/json"  标示请求的是json格式



2. 400 (Bad Request)

改成:  data:JSON.stringify({"name":"123"})





GET--json返回

$.ajax({
   type: 'GET',
   url: "sss",
   async:false,
   data:"name=123",  或者:

data:{

"name":"123"

}
   dataType:"JSON",
   success: function(data){
       alert(data.name);
   },
   error: function(xhr, type){
       alert('数据加载失败');
   }
});

最后的效果 http://localhost/xxx?name=123
controll:

public TEST(@RequestParam(value="name") String name){}



事实上:

通过httpServletRequest.getParameter("name") 获取  和 @RequestParam(value="name")  获取 请求的参数,method的方式:GET或者post 都是可以的

注意data的格式:data: “name=123&age=12”  或者 data:{"name“:”12“,”age“:”12“}  。

请不要加上  [b]contentType:"application/json" 。这个表示请求的参数是json格式[/b]



[b]通过@RequestBody Map reqMap 表示请求的是json格式,所以要加上contentType:"application/json"。其次传入json格式的数据:[b]data:JSON.stringify({"name":"123"})[/b][/b]






415 (Unsupported Media Type


415 (Unsupported Media Type

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: