精华帖 (1) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (11)
|
|
---|---|
作者 | 正文 |
发表时间:2011-02-14
jsonp才是正经的方案啊,呵呵
|
|
返回顶楼 | |
发表时间:2011-02-14
最后修改:2011-02-14
sw1982 写道 jsonp才是正经的方案啊,呵呵
考虑过…… 但 jsonp 没法实现浏览器本地的跨域传递数据,应用见《普通 http 网络下数据的安全传输》 >>即时插入 script 元素的方式,会让脚本立即执行,不安全,并且需要与跨域的远端做好约定…… jsonp 较适于对所跨的域的有较大控制权的情况,如果异域的 JS 不按规则办事,则可以破坏本域的 JS 逻辑。而 window.name 不存在这样的情况。 |
|
返回顶楼 | |
发表时间:2011-05-11
我怎么不行,我在执行到 var _getData = function(frame, callback) {
var data=""; try { data=frame.contentWindow.name; } catch(e) { alert(e.message +"," + e.description); } _clear(frame); if(callback && typeof callback === 'function') { callback(data); } } catch 到的错误是拒绝访问 |
|
返回顶楼 | |
发表时间:2011-08-12
可以跨浏览器吗,可以跨操作系统吗
window.name是不是只能在xp上用,是不是只能在ie上使? |
|
返回顶楼 | |
发表时间:2011-08-13
楼主的帖子很有见地。这是对于jsonp的限制的深刻思考的结果。没有真正用jsonp写过代码的人,连问出来的问题都显得可笑。特别是几个“我觉得还是jsonp”的人。
jsonp能够能够post数据吗?虽然通过url中的query string能够曲线的做,但是长度受到限制。 不过这个解决方案不够大众,总让人心里有点不踏实。我是这样解决的,考虑如下: 1、对于大多数web应用,post次数比起get次数要少许多,所以稍微低效一点可以忍受。 2、符合主流的思想。 描述: 主页面从domaina获得,每次要post数据都post到iframe,这样就解决了跨域问题,那么如何取得结果呢?在服务器一侧是这样处理的,如果是正常的请求,直接返回结果,如果有iframe标记,就将本应返回的结果暂存在服务器。 然后主页面用jsonp去查询这个结果,查询到的话就返回结果,并且将结果从服务器中删除。 这是演示代码:http://trade.fh.gov.cn/oa/Fhtrade.html 这个应用当然非常普通,不普通的地方就是你可以将页面保存下来,(或者你拷贝过去放你你自己的服务器上),系统仍旧会工作。因为后台支撑在我的服务上。 |
|
返回顶楼 | |