jquery中的ajax处理跨域问题-之-----jsonp

ajax的跨域问题--jsonp,使用jsonp方法

(1)首先前端的请求方法,请求的数据格式是  jsonp 的格式

$.ajax({
url:url ,//后台处理程序的url
data:{},//json格式的参数,
dataType:"jsonp",//跨域必须写出jsonp
jsonp:"callback",//回调参数
success:function(data){

}
});

注意:跨域的时候url地址一定要加 http://

jquery中的ajax处理跨域问题-之-----jsonp

//前端的请求方法:

       $.ajax({
                url:"http://192.168.0.131:8080/mooc/courseController/getcourse.do" ,//后台处理程序的url
//                    data:{},//json格式的参数,
                dataType:"jsonp",//跨域必须写出jsonp
                jsonpcallback:"callback",//回调参数
                success:function(data){

                    console.log(data.weatherinfo.city+"-1111111111111-"+data.weatherinfo.Radar)

                }
            });
        }


(2)服务端返回的数据 也应该是  jsonp 的格式 如下:

//这是第三方的数据接口

String url = "http://www.weather.com.cn/adat/sk/101010100.html";

//请求方法
HttpClient client = new HttpClient();

HttpMethod method = new GetMethod(url);

//jsonp 的回调方法名字
String callback = request.getParameter("callback");

//第三方返回的 json 数据
String resut="";
try {
client.executeMethod(method);

resut = method.getResponseBodyAsString();

} catch (HttpException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 返回 jsonp  的格式
return callback+"("+resut+")";