您的位置:首页 > Web前端 > JavaScript

jsonp跨域访问(Get方式)

2016-06-22 09:54 316 查看
前端代码:

$.ajax({
        type: "GET",
        url: "http://127.0.0.1:8081/webp/servlet/PersonListServlet?pname="+encodeURI(encodeURI(pname))+"&email="+email,
        dataType: "jsonp",
        jsonpCallback: "OnGetMemberSuccessByjsonp"//回调处理函数
    });

function OnGetMemberSuccessByjsonp(data) {

    //处理data

     var arr = data.personlist;

for(i = 0; i < arr.length; i++) {

      var person = arr[i];
alert(person.pid+"--"+person.department.deptmentName+"--"+person.email);//注意pid department必须和Person类的属性完全一致,包括大小写

     } 

}

后端代码:

         Servlet类:

List<Person> list = PersonDao.getPersonByCon(condition);
String json = JSONArray.fromObject(list).toString();
//System.out.println(json);

String result = "{\"personlist\":"+json+"}";

    String  callback = req.getParameter("callback");      

    String jsoncallback =( callback + "("+result+")").replaceAll("\"", "\'");   

    //System.out.println(jsoncallback);

    PrintWriter out =  resp.getWriter();       

    out.print(jsoncallback);      

    out.flush();  

    out.close();   

       Person类:

    public class Person {
private int Pid;//id
private String email;//邮箱
private String telephone;//手机
private Department department;//部门

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