美文网首页
通过script标签实现跨域

通过script标签实现跨域

作者: 猩崽大叔 | 来源:发表于2017-05-03 15:14 被阅读0次

跨域

什么是跨域?

跨域问题是由于javascript语言安全限制中的同源策略造成的。同源策略是由Netscape提出的一个著名的安全策略。 现在所有支持JavaScript 的浏览器都会使用这个策略。同源策略阻止从一个域上加载的脚本去获取或操作另一个域上的文档属性。也就是说,受到请求的 URL 的域必须与当前 Web 页面的域相同。这说明浏览器隔离来自不同源的内容,以防止它们之间的操作。所谓同源是指域名,协议,端口均相同。

同源的几种情况:

不同域名属于跨域,如:www.a.com和www.b.com,另外www.a.com 和www.a.com.cn 也属于不同域名。

主域名和子域名(二级域名、三级域名等)跨域,如:www.a.com 和 sub.a.com属于跨域,sub.a.com 和 sub1.a.com 之间也是跨域。

协议属于跨域,如:http://www.a.com 和 https://www.a.com。

不同端口,如: www.a.com:80和 www.a.com:81 。

IP和域名属于跨域,如:123.125.106.16 和www.weibo.com

为什么要跨越?

我们实际上做项目的时候,不可避免地会根据项目需求进行跨站访问,子域和主域之间数据共享等,受到同源策略的影响,要满足这些需求,就要用跨域技术来实现。

跨域技术

设置头文件:例如:

res.setHeader("Access-Control-Allow-Origin","*");

res.setHeader("Access-Control-Allow-Methods","GET,POST");

服务器代理:在服务器端设置代理文件,用来进行跨域请求,客户端直接发送本域内的Ajax请求,从而达到跨域请求的目的。特点:在客户端不存在跨域请求。需要增加代理文件,为了安全需要和对方约定。

jsonp:jsonp是一个简单高效的跨域方式,它允许在服务器端集成Script tags返回至客户端,通过javascript callback的形式实现跨域访问。特点:不受同源策略的限制,兼容性更好,易于实现,只支持get。

相关文章

  • 4-1使用jsonp解决跨域

    1、通过静态的script标签的src属性进行跨域请求 2、通过动态的script标签的src属性进行跨域请求

  • 跨域JSONP实质与JavaScript实现

    跨域JSONP实质与JavaScript实现 实质 利用script标签的src属性(浏览器允许script标签跨...

  • 通过script标签实现跨域

    跨域 什么是跨域? 跨域问题是由于javascript语言安全限制中的同源策略造成的。同源策略是由Netscape...

  • JSONP

    什么是JSONP 通过动态创建script标签来实现跨域沟通的一种解决方案。 请求方动态创建script标签 使s...

  • 前端面试知识点(7)——前端进阶2

    1、手写jsonp的实现 基础:script标签可以跨域获取脚本 进阶:动态生成script标签,并拼接url填...

  • 跨域

    JSONP html中可以通过script标签引入其他域的js,利用这一特性,结合后端支持,可以实现跨域访问接口实...

  • 跨域的解决方式

    jsonp html中可以通过script标签引入其他域的js,利用这一特性,结合后端支持,可以实现跨域访问接口实...

  • 跨域的解决方式

    jsonp html中可以通过script标签引入其他域的js,利用这一特性,结合后端支持,可以实现跨域访问接口实...

  • jsonp的原理与实现

    概述jsonp是一种跨域通信的手段,它的原理其实很简单: 首先是利用script标签的src属性来实现跨域。 通过...

  • 跨域的三种实现方法

    用JSONP实现跨域 原理: 利用 script 标签引用JS文件时不受是否跨域的影响,在后端支持的情况下,实现跨...

网友评论

      本文标题:通过script标签实现跨域

      本文链接:https://www.haomeiwen.com/subject/jyhhtxtx.html