AJAX 服务端设置跨域

前端之家收集整理的这篇文章主要介绍了AJAX 服务端设置跨域前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

ajax全称Asynchronous JavaScript And XML;

XML在简称中残留是历史原因,响应数据一般json,文本,html;

来源域的ajax向目标域(跨域)发起请求,会自动带上Origin头,如
Origin:http://fron.com
目标域判断这个Origin的值,如果正确,返回:
Access-Control-Allow-Origin:http://from.com
表示同意跨域。

如果Access-Control-Allow-Origin:*,表示任意域都可以往目标域跨,
如果没有Access-Control-Allow-Origin头部的存在,
回报下面的错误
XMLHttpRequest cannot load.....

默认情况下,跨域无法带上目标域的回话(cookie),需要设置xhr实力的withCredentials的属性为true,

服务端设置如下:

<?PHP 
header("Access-Control-Allow-Origin:http://xxx.com");             
header("Access-Control-Allow-Credentials:true"); 
?>

如果设置了Credentials为true,不能设置通配符*(浏览器为了安全考虑);

猜你在找的Ajax相关文章