SlideShare a Scribd company logo
1 of 53
前端 跨域 总结 张所勇( suoyong ) [email_address] [email_address]
Ajax 跨域 Iframe 跨域 Cookie 跨域 Flash 跨域 跨域情况
跨域是什么?
同源策略 ,[object Object]
什么情况会跨域?
什么情况会跨域? 主域不同
什么情况会跨域? 主域相同,子域不同
什么情况会跨域? 域名相同,协议不同
什么情况会跨域? 域名相同,端口不同
什么情况 不会 跨域? 域名完全相同
Ajax 跨域解决办法
示例 jiaju.com 和 zhangsuoyong.com 通信
按照能力分 ,[object Object],[object Object]
能掌握 zhangsuoyong.com 时 ,[object Object],[object Object],[object Object]
能掌握 zhangsuoyong.com 时 ,[object Object],[object Object],[object Object],[object Object]
能掌握 zhangsuoyong.com 时 ,[object Object],[object Object],[object Object]
能掌握 zhangsuoyong.com 时 ,[object Object],[object Object],[object Object],[object Object]
能掌握 zhangsuoyong.com 时 ,[object Object],[object Object],[object Object],$. getJSON (" http://www.zhangsuoyong.com/demo/cross/ajax01/2.php? jsoncallback=? ",function(data){ alert(data);   }); $. ajax ({ url  :  'http://www.zhangsuoyong.com/demo/cross/ajax01/2.php? jsoncallback=? ', dataType : " jsonp ", type : " GET ", success : function(data){ alert(data); } });
能掌握 zhangsuoyong.com 时 ,[object Object],[object Object],[object Object]
不能 掌握 zhangsuoyong.com 时 ,[object Object],[object Object],[object Object]
不能 掌握 zhangsuoyong.com 时 ,[object Object],[object Object]
iFrame 跨域解决办法
按情境分 ,[object Object],[object Object],[object Object]
不 跨域时 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
跨域时 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
跨域时 ,[object Object],[object Object]
跨域时 ,[object Object],[object Object],[object Object],[object Object]
主域不同时 ,[object Object],[object Object],[object Object]
主域不同时 ,[object Object],[object Object],[object Object],[object Object]
location.hash( A 操作 B ) ,[object Object],1 、 通过 location.hash 方式传递参数 2 、 通过定时器检测 hash 变化,执行对应操作
location.hash( B 操作 A ) ,[object Object],1 、 创建和上层同域的 iframe 通过 location.hash 方式传递参数 2 、 通过 top.window 获取顶层 window 对象
location.hash ,[object Object],[object Object],[object Object],[object Object]
location.hash ,[object Object],[object Object],[object Object],[object Object]
location.hash ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
location.hash 缺点 ,[object Object],[object Object]
主域不同时 ,[object Object],[object Object],[object Object],[object Object],[object Object]
window.name ,[object Object],[object Object],[object Object],[object Object]
window.name ,[object Object],[object Object]
window.name ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
window.name ,[object Object],window.name=‘Hello kitty!’ 1 、 创建 iFrame B 2 、 把要传递的数据放入 window.name
window.name ,[object Object],3 、 在 A 中将  B 替换 成 C 4 、 读取 C 的 window.name 以获取数据
window.name ,[object Object],[object Object]
Cookie 跨域解决办法
Cookie 跨域 ,[object Object],[object Object],[object Object],[object Object]
Cookie 跨域 ,[object Object],[object Object],[object Object],[object Object]
Cookie 跨域 ,[object Object],[object Object],[object Object]
Cookie 跨域 ,[object Object],[object Object]
Flash 跨域解决办法
Flash 跨域 ,[object Object],[object Object],[object Object],[object Object],[object Object]
Flash 跨域 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Flash 跨域 ,[object Object],[object Object]
[object Object]
[object Object]

More Related Content

What's hot

淘宝开放产品前端实践
淘宝开放产品前端实践淘宝开放产品前端实践
淘宝开放产品前端实践taobao.com
 
Kind editor设计思路
Kind editor设计思路Kind editor设计思路
Kind editor设计思路taobao.com
 
前端性能测试
前端性能测试前端性能测试
前端性能测试tbmallf2e
 
Web爬虫那点事
Web爬虫那点事Web爬虫那点事
Web爬虫那点事Yihua Huang
 
前端调试工具使用指南
前端调试工具使用指南前端调试工具使用指南
前端调试工具使用指南gm163com
 
淺談RESTful API認證 Token機制使用經驗分享
淺談RESTful API認證 Token機制使用經驗分享淺談RESTful API認證 Token機制使用經驗分享
淺談RESTful API認證 Token機制使用經驗分享Tun-Yu Chang
 
那些年,我们一起跨过域
那些年,我们一起跨过域那些年,我们一起跨过域
那些年,我们一起跨过域ksky521
 
非常靠谱 Html 5
非常靠谱 Html 5 非常靠谱 Html 5
非常靠谱 Html 5 Tony Deng
 
富文本编辑器在互联网上的应用
富文本编辑器在互联网上的应用富文本编辑器在互联网上的应用
富文本编辑器在互联网上的应用luolonghao
 
前端MVVM框架安全
前端MVVM框架安全前端MVVM框架安全
前端MVVM框架安全Borg Han
 
快速入坑 Node.js - 0613 SITCON 雲林定期聚
快速入坑 Node.js - 0613 SITCON 雲林定期聚快速入坑 Node.js - 0613 SITCON 雲林定期聚
快速入坑 Node.js - 0613 SITCON 雲林定期聚Lorex L. Yang
 
Node Web开发实战
Node Web开发实战Node Web开发实战
Node Web开发实战fengmk2
 
QCon - 一次 Clojure Web 编程实战
QCon - 一次 Clojure Web 编程实战QCon - 一次 Clojure Web 编程实战
QCon - 一次 Clojure Web 编程实战dennis zhuang
 
Real time web实时信息流推送
Real time web实时信息流推送Real time web实时信息流推送
Real time web实时信息流推送yongboy
 
Koubei banquet 34
Koubei banquet 34Koubei banquet 34
Koubei banquet 34Koubei UED
 
使用Bigpipe提升浏览速度
使用Bigpipe提升浏览速度使用Bigpipe提升浏览速度
使用Bigpipe提升浏览速度kumawu
 
Javascript stacktrace
Javascript stacktraceJavascript stacktrace
Javascript stacktracecazhfe
 

What's hot (20)

淘宝开放产品前端实践
淘宝开放产品前端实践淘宝开放产品前端实践
淘宝开放产品前端实践
 
Kind editor设计思路
Kind editor设计思路Kind editor设计思路
Kind editor设计思路
 
前端性能测试
前端性能测试前端性能测试
前端性能测试
 
Web爬虫那点事
Web爬虫那点事Web爬虫那点事
Web爬虫那点事
 
前端调试工具使用指南
前端调试工具使用指南前端调试工具使用指南
前端调试工具使用指南
 
淺談RESTful API認證 Token機制使用經驗分享
淺談RESTful API認證 Token機制使用經驗分享淺談RESTful API認證 Token機制使用經驗分享
淺談RESTful API認證 Token機制使用經驗分享
 
那些年,我们一起跨过域
那些年,我们一起跨过域那些年,我们一起跨过域
那些年,我们一起跨过域
 
非常靠谱 Html 5
非常靠谱 Html 5 非常靠谱 Html 5
非常靠谱 Html 5
 
Maven & mongo & sring
Maven & mongo & sringMaven & mongo & sring
Maven & mongo & sring
 
富文本编辑器在互联网上的应用
富文本编辑器在互联网上的应用富文本编辑器在互联网上的应用
富文本编辑器在互联网上的应用
 
前端MVVM框架安全
前端MVVM框架安全前端MVVM框架安全
前端MVVM框架安全
 
AJAX Basic
AJAX BasicAJAX Basic
AJAX Basic
 
快速入坑 Node.js - 0613 SITCON 雲林定期聚
快速入坑 Node.js - 0613 SITCON 雲林定期聚快速入坑 Node.js - 0613 SITCON 雲林定期聚
快速入坑 Node.js - 0613 SITCON 雲林定期聚
 
Node Web开发实战
Node Web开发实战Node Web开发实战
Node Web开发实战
 
QCon - 一次 Clojure Web 编程实战
QCon - 一次 Clojure Web 编程实战QCon - 一次 Clojure Web 编程实战
QCon - 一次 Clojure Web 编程实战
 
Real time web实时信息流推送
Real time web实时信息流推送Real time web实时信息流推送
Real time web实时信息流推送
 
Koubei banquet 34
Koubei banquet 34Koubei banquet 34
Koubei banquet 34
 
Web教程2
Web教程2Web教程2
Web教程2
 
使用Bigpipe提升浏览速度
使用Bigpipe提升浏览速度使用Bigpipe提升浏览速度
使用Bigpipe提升浏览速度
 
Javascript stacktrace
Javascript stacktraceJavascript stacktrace
Javascript stacktrace
 

Similar to 前端跨域总结

基于Greasemonkey的Firefox浏览器扩展
基于Greasemonkey的Firefox浏览器扩展基于Greasemonkey的Firefox浏览器扩展
基于Greasemonkey的Firefox浏览器扩展agen
 
张所勇:前端开发工具推荐
张所勇:前端开发工具推荐张所勇:前端开发工具推荐
张所勇:前端开发工具推荐zhangsuoyong
 
基于Greasemonkey的Firefox浏览器扩展
基于Greasemonkey的Firefox浏览器扩展基于Greasemonkey的Firefox浏览器扩展
基于Greasemonkey的Firefox浏览器扩展agen
 
赶集团购开发总结4
赶集团购开发总结4赶集团购开发总结4
赶集团购开发总结4yangdj
 
【项目分享】赶集移动Web App开发总结
【项目分享】赶集移动Web App开发总结 【项目分享】赶集移动Web App开发总结
【项目分享】赶集移动Web App开发总结 yangdj
 
黑站騎士
黑站騎士黑站騎士
黑站騎士openblue
 
Html5form
Html5formHtml5form
Html5formjay li
 
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型Jackson Tian
 
淘宝网前端开发面试题
淘宝网前端开发面试题 淘宝网前端开发面试题
淘宝网前端开发面试题 Lumend
 
淘宝彩票移动项目开发实践
淘宝彩票移动项目开发实践淘宝彩票移动项目开发实践
淘宝彩票移动项目开发实践alvis-m
 
移动端Web开发性能优化实践
移动端Web开发性能优化实践移动端Web开发性能优化实践
移动端Web开发性能优化实践Mingel Zhang
 
Using google appengine_final
Using google appengine_finalUsing google appengine_final
Using google appengine_finalWei Sun
 
Flash RIA Usability
Flash RIA UsabilityFlash RIA Usability
Flash RIA Usabilitynbaction
 
客户端存储与计算
客户端存储与计算客户端存储与计算
客户端存储与计算xiaotao ning
 
Ajax Transportation Methods
Ajax Transportation MethodsAjax Transportation Methods
Ajax Transportation Methodsyiditushe
 
Web dev road map part one
Web dev road map part oneWeb dev road map part one
Web dev road map part one安 闫
 
高性能网站最佳实践
高性能网站最佳实践高性能网站最佳实践
高性能网站最佳实践longhao
 

Similar to 前端跨域总结 (20)

基于Greasemonkey的Firefox浏览器扩展
基于Greasemonkey的Firefox浏览器扩展基于Greasemonkey的Firefox浏览器扩展
基于Greasemonkey的Firefox浏览器扩展
 
张所勇:前端开发工具推荐
张所勇:前端开发工具推荐张所勇:前端开发工具推荐
张所勇:前端开发工具推荐
 
基于Greasemonkey的Firefox浏览器扩展
基于Greasemonkey的Firefox浏览器扩展基于Greasemonkey的Firefox浏览器扩展
基于Greasemonkey的Firefox浏览器扩展
 
赶集团购开发总结4
赶集团购开发总结4赶集团购开发总结4
赶集团购开发总结4
 
【项目分享】赶集移动Web App开发总结
【项目分享】赶集移动Web App开发总结 【项目分享】赶集移动Web App开发总结
【项目分享】赶集移动Web App开发总结
 
黑站騎士
黑站騎士黑站騎士
黑站騎士
 
Web base 吴志华
Web base 吴志华Web base 吴志华
Web base 吴志华
 
Html5form
Html5formHtml5form
Html5form
 
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
 
Html5
Html5Html5
Html5
 
淘宝网前端开发面试题
淘宝网前端开发面试题 淘宝网前端开发面试题
淘宝网前端开发面试题
 
淘宝彩票移动项目开发实践
淘宝彩票移动项目开发实践淘宝彩票移动项目开发实践
淘宝彩票移动项目开发实践
 
移动端Web开发性能优化实践
移动端Web开发性能优化实践移动端Web开发性能优化实践
移动端Web开发性能优化实践
 
Using google appengine_final
Using google appengine_finalUsing google appengine_final
Using google appengine_final
 
Flash RIA Usability
Flash RIA UsabilityFlash RIA Usability
Flash RIA Usability
 
Flash ria usability 刘轩飞
Flash ria usability 刘轩飞Flash ria usability 刘轩飞
Flash ria usability 刘轩飞
 
客户端存储与计算
客户端存储与计算客户端存储与计算
客户端存储与计算
 
Ajax Transportation Methods
Ajax Transportation MethodsAjax Transportation Methods
Ajax Transportation Methods
 
Web dev road map part one
Web dev road map part oneWeb dev road map part one
Web dev road map part one
 
高性能网站最佳实践
高性能网站最佳实践高性能网站最佳实践
高性能网站最佳实践
 

前端跨域总结