Javascript跨域与浏览器同源
2015-06-03 13:23
447 查看
现有A,B两个url,若这两个url的协议相同,域名相同,端口相同则说明这两个url同源,即Javascript的同域。如,http://www.example.com:80/和http://www.example.com:80/admin同源,只是路径不同而已,http://www.example.com:8000和http://www.example.com:8001不同源。出于安全考虑,浏览器默认执行同源策略,即若A,B不同源,则不能在A站点直接去获取B站点的数据,这也在一定程度上降低了发生XSS的可能性。而且当前十分流行的异步加载技术AJAX,明确禁止跨域访问。但开发时,比如做问卷调查,自己的站点A需要直接获取某问卷调查网站B的数据,此时可以向此B网站申请,让其对A站点开放跨域访问。具体方法是,要求对方在response的header头中加上Access-Control-Allow-Origin:A域名,这样的话,当获取B网站的数据时,便可以进行跨域访问了。作为一个网络管理员,千万不要配置Access-Control-Allow-Origin
: *, 因为这样的配置,即对所有站点开放,使得任何其他站点都可以跨域获取自己的站点数据,非常危险。
: *, 因为这样的配置,即对所有站点开放,使得任何其他站点都可以跨域获取自己的站点数据,非常危险。
相关文章推荐
- js获取时间距离倒计时
- 随笔分类 - 无废话ExtJs系列教程
- 详解JavaScript中循环控制语句的用法
- 记录一个JS异常Uncaught NotFoundError
- 讲解JavaScript中for...in语句的使用方法
- JavaScript中for循环的使用详解
- 详解JavaScript的while循环的使用
- JavaScript - implement page lazy loading via mouse scrolling
- JavaScript中switch语句的用法详解
- js之滚动置顶效果
- JavaScript中的条件判断语句使用详解
- js光标
- js 循环提交ajax请求
- Jstree Demo
- 简单介绍JavaScript的变量和数据类型
- 在HTML中插入JavaScript代码的示例
- 在浏览器中打开或关闭JavaScript的方法
- 浅谈javascript中基本包装类型
- extjs panel自动滚动
- js中函数声明与函数表达式