解决ajax跨域问题(转自六只)

跨域:

JQuery的ajax有jsonp可以用来解决跨域的问题。

$(document).ready(function(){
       var url='http://localhost:8080/WorkGroupManagment/open/getGroupById"
           +"?id=1&callback=?';
       $.ajax({
         url:url,
         dataType:'jsonp',
         processData: false,
         type:'get',
         success:function(data){
           alert(data.name);
         },
         error:function(XMLHttpRequest, textStatus, errorThrown) {
           alert(XMLHttpRequest.status);
           alert(XMLHttpRequest.readyState);
           alert(textStatus);
         }});
       });
json格式:
  {
        "message":"获取成功",
        "state":"1",
        "result":{"name":"工作组1","id":1,"description":"11"}
    }
jsonp格式:
callback({
        "message":"获取成功",
        "state":"1",
        "result":{"name":"工作组1","id":1,"description":"11"}
    })

在url中callback传到后台的参数是神马callback就是神马,jsonp比json外面有多了一层,callback()。

var url="http://localhost:8080/WorkGroupManagment/open/getGroupById"
        +"?id=1&callback=?";
    $.jsonp({
      "url": url,
      "success": function(data) {
        $("#current-group").text("当前工作组:"+data.result.name);
      },
      "error": function(d,msg) {
        alert("Could not find user "+msg);
      }
    });

 

 

posted @ 2014-03-10 17:16  曹桦伟  阅读(125)  评论(0编辑  收藏  举报