一直以為AJAX跨域是無法逾越的鴻溝,最近發現原來在服務端可以通過發送header信息來允許AJAX跨域請求。
PHP代碼示例:
復制代碼 代碼如下:
header('Access-Control-Allow-Origin:*');
header('Access-Control-Allow-Headers:X-Requested-With');
經過測試,webkit內核的浏覽器成功實現跨域請求。
IE一如既往的不支持~看來只能在移動端享用這一強大功能了
另外,需要注意的是,第一行配置中的*表示允許來自所有referer的跨域請求,如果不想完全開放,可以配置為特定域名。這樣就能保證只有來自特定域名的跨域請求可以成功。例如:
復制代碼 代碼如下:
header('Access-Control-Allow-Origin:http://www.test.com');
第二行配置的含義是允許異步AJAX請求,因為異步AJAX會自動發送這個header信息,服務端一般通過接受header信息來確定是AJAX請求。一般我們發送的AJAX請求都是異步的。
以上所述就是實現AJAX跨域請求,希望小伙伴們喜歡。