jquery 之 ajax 跨域请求-后端为java

jquery 之 ajax 跨域请求-后端为java

前段写法:

$.ajax({
					async: false,
					url: "后端请求的url",
					type: "GET",
					dataType: 'jsonp',
					jsonp: 'jsonpcallback',
					data: "",
					timeout: 5000,
					complete: function(XMLHttpRequest, textStatus) {
						if (textStatus == "error") {
						layer.open({
					content: '请求出错(网络异常.)',
					style: 'background-color:rgb(230, 30, 43); color:#fff; border:none;',
					time: 2
				});
						}
					}
				});

    

function jsonpcallback(response) {
      if (!$.isEmptyObject(response)) {
        //获取返回的数据
      }
};

   

  java后端:

  1.后端正常返回 json  数据,但不是直接返回,需通过jsp 中转一下,jsp 内容如下:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
 //jsonStr:是后台返回的json数据
 //jsonpcallback  :必需与前端的jsonp: 'jsonpcallback',一致
String jsonResult = (String)request.getAttribute("jsonStr");
out.println("jsonpcallback("+jsonResult+")");
%>

  

相关推荐