前段時間做公司的網站,遇到了跨域問題。首頁域名是www.XXX.com,但是需要引用user.XXXX.com下的ajax方法,然後用jsonp解決的,例如下面這種:
$.ajax({
url : haibao.config.get("userPath")+'/ajax/info:getPicsHtml.html?v' + new Date().toString(),
type : 'GET',
dataType : 'jsonp',
data : {id:p_w_picpathId},
jsonp:'callback',//自己命名,在ajax php中使用
success : function (data){
$('.tj_box').html(data);
$('.tj_box').css({'height':'100%','opacity': '1'});
$('body').css({'overflow':'hidden'});
$('.bg_cover').show();
}
});
在php中擷取則通過類似下面這種get方式獲得:
$callback = \haibao\frame\http\Request::get('callback');(公司内部架構使用,一般$_GET應該就可以了)
//此處處理資料
echo $callback . '('.json_encode($html).');';(在ajax的success那裡就可以擷取到傳回資料)