ajax总结--普通请求与跨域请求

ajax请求总结–普通请求与跨域请求

ajax普通请求

前端格式:
$(function() {
	var url = "/function/tree/testRequestData";
	 $.ajax({
	        type: "GET",
	        url: url,
	        data: {
	        },
	        dataType:"json",
	        success: function(data) {
	        	initThisZtree(data);
	        },
	        error:function(){
	        }
	    });
});
后台:后台是普通的controller,方法上带@ResponseBody,会直接返回json

ajax请求之跨域请求

前端格式:
		$.ajax({
         type: "GET",
         url: "/function/wf/requestData",
         async:false,
       	 data:{"devId":devid},
         dataType: "jsonp",
         jsonp:"callback",
         success: function(data){      
			linkids = data.ids;
			hids = data.hids;
			iybs = data.iybs;
			jybs = data.jybs;
			keyids = data.keyids;
			groups = data.groups;
			gids = data.gids;
			posSide = 2*parseInt(data.posSide);
			//解析后端传过来的数据
			centerId0 = data.centerIed;
			centerName0 = data.centerName;
			hardYbs0 = data.hardYbs;
			groups = data.groups;
			xdz = new XDZ(data.centerIed,data.centerName,data.hardYbs,data.groupList);
         },
         error:function(data){  
             alert("ajax请求错误");  
             return ;
         } 

重点与普通ajax请求的差异:

         dataType: "jsonp",
         jsonp:"callback",
后台:因为返回是jsonp格式,所以后台返回有差异
@RequestMapping(value="/requestData")
public void ajaxJsonData(HttpServletRequest request,HttpServletResponse response,@RequestParam("devId") String iedId){
	    String jsonString = xuduanZi(iedId);
	    String callback = request.getParameter("callback");
		response.setCharacterEncoding("UTF-8");  
		response.setContentType("application/json; charset=utf-8");
		PrintWriter writer = null;
		try {
			writer = response.getWriter();
		} catch (IOException e) {
			e.printStackTrace();
		}
		writer.print(callback + "("+jsonString+")");
			
			System.out.println("jsonString"+jsonString);
	    }

对象转换为json字符串:
依赖jar包:

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
json = JSONObject.fromObject(result).toString();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值