关于跨域,我调用第三方接口是跨域吗?
关于怎么解决跨域的问题到是多的,但是我看多了一直有一个疑问,列如下面的图,网上一找一堆,解释跨域问题
如果我有一个web项目部署在服务器上了,就是 http://store.company.com/dir/... 访问首页,这个时候我去调用第三方的接口,比如百度的
按照一般找到的同源规则来看,我去调用百度的接口是不是就跨域了?为什么还能成功呢?而且好多第三方开发的服务肯定和我不同源,应该也是跨域,但是能调用。
是我对跨域理解有问题?还是提供接口的第三方做了处理?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
首先要看你的访问方式,是否受跨域的限制,有些访问是不受限制的,比如页面里嵌入其他域的script,css都是允许的,主要受限的比如有ajax请求,详细的清单可以看这里:
https://developer.mozilla.org...
再来,如果你的访问是属于跨域限制范围内的,还要看服务器一方是否开放了跨域访问,当前,缺省是不开放的,有一个CORS规范对跨域访问留了一些后门,也就是可以通过一定的手段开放跨域访问,这时就要问服务器一方了(客户端这边可以不用做任何事)。
早年,还有一个特殊的技术手段JSONP来绕过跨域的限制,现在有了CORS,JSONP已经用的较少了。
跨域了。但是接口提供方做了处理。
处理方式是
CORS