利用iframe另类方法绕过js跨域问题

我想大家都遇到过javascript跨域问题,话不多说,直接开始业务场景。

 

项目1中需要使用文件上传,上传到文件上传下载服务器,上传完成后,使用使用js讲上传完成的图片路径放入页面的input中,提交给后台。

 

很简单的要求,主要是局部刷新但是和跨域掺和一下,就比较麻烦了。

 

主要问题在于:

1.使用ajax不能提交给非当前域名(跨域问题),所以ajax方案完全不能使用

2.使用iframe提交后,需要回调页面实行js进行dom操作,不是同一个域名的子页面不能够进行js操作影响父页面(也是跨域问题)

 

我在网上搜的跨域问题解决主要是取数据的,用script标签解决,貌似不能解决发文件的问题。

发文件好像主要用swfupload,flash不会,所以就自己想解决方法吧。

 

最后的结果是这样的:

 

项目1中使用iframe包装自己的一个upload页面,upload主要是一个表单,表单的action设为文件上传下载服务器上的项目2提供的文件上传接口,文件上传接口最后在完成文件上传后,跳转到项目1中的callback页面,使用get传值的方式把路径传递过来,然后在callback页面执行js操作父页面。

 

很简单的思路,通过一个跳转回原项目页面的操作,把js跨域问题绕过了。

如果大家有更好的处理方法,希望能赐教.

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值