jQuery中contentType与后台数据获取简述

这里只说明两种常用的contentType,后续再把剩下的补上

application/x-www-form-urlencoded
//前端
    $.ajax({
        type : "POST",
        //默认属性
        //contentType: "application/x-www-form-urlencoded",
        url : "/test/ajaxTest1",
        data : {"param1":"1"},
        success : function(result) {
            alert(result);
        },
        error : function(e){
        }
    });
//后端
	@RequestMapping("/ajaxTest1")
    @ResponseBody
    public String ajaxTest(@RequestParam(value = "param1",defaultValue = "") String param1,
                           HttpServletRequest request){
        String t = request.getParameter("param1");
        return t;
    }

1、传值格式为键值对,后台可以RequestParam或getParameter,但不能用requestBody;
2、POST、GET均可。


application/json
//前端
	$.ajax({
        type : "POST",
        contentType: "application/json;charset=UTF-8",
        url : "/test/ajaxTest2",
        data : JSON.stringify({"param1":"1"}),
        success : function(result) {
            alert(result);
        },
        error : function(e){
        }
    });

//后端
	@RequestMapping("/ajaxTest2")
    @ResponseBody
    public String ajaxTest2(@RequestBody Map<String,String> map){
        return map.get("param1");
    }

1、传值格式为JSON字符串,后台可以RequestBody,但不能用RequestParam或getParameter;
2、只能用POST方式。


另外原则上RequestBody和RequestParam不能同时使用,但是可以通过拼接url的方式实现,即data中传递RequestBody的数据,url中传递RequestParam的数据。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值