jsonp 示例

前端:

function doQuery(){
var sql = encodeURI($('#sql').val());
var first = $('#first').val();
var size = $('#size').val();
var url ='';
var data={
"sql":sql
,"first":first
,"size":size
};
$.ajax({
    url: url,
    type: 'post',
    dataType:'jsonp',
    //jsonp: 'callback',
//jsonpCallback:"cb",/*设置一个回调函数,名字随便取,和下面的函数里的名字相同就行*/
    data: data,
    success:function(result){
        for(var i = 0;i< result.rows.length;i++){
//console.log(result.rows[i])
document.write(JSON.stringify(result.rows[i]))
document.write("\n\r")
}
    },
    error:function(data){
        alert("获取失败,请重试!");
    }
});


}

后端代码:

public String function(  HttpServletRequest request, HttpServletResponse response) throws Exception{

String first = (String)request.getParameter("first");
String size = (String)request.getParameter("size");

String sql = URLDecoder.decode((String)request.getParameter("sql"),"UTF-8");
String jsonText = "-1";

String callback = request.getParameter("callback");//关键是这个,用callback包住结果
jsonText = "{\"status\": " + true
+", \"total\": " + list.size()
+ ", \"rows\":" + JSONArray.fromObject(list).toString() + "}";
jsonText=callback+"("+jsonText+")";
response.setCharacterEncoding("UTF-8");
response.setContentType("application/x-javascript;charset=UTF-8");
response.setHeader("Access-Control-Allow-Origin", "*");
PrintWriter out = response.getWriter();

out.println(jsonText);
out.flush();
return null;


}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值