当前位置:编程学习 > 网站相关 >>

跨域提交时主页面获取目标服务器返回值的方法

 

在使用POST方式时,从A域向B提交表单,使用jsonp方式无法将结果返回给A域的主页面。只能使用script引用方式,这种get请求有很大局限性。

在非使用POST不可以时候,可以做以下方式解决:

A域主页面在提交前,动态生成一个隐含的iframe,同时准备好接收返回值的页面。

FORM的action为B域的目标页面,target为iframe.

B域的目标页面将返回值作为参为再重定向到A域的接收页面,可是用JS或服务器端直接发送跳转码,构造http://www.zzzyk.com /receive?msg=xxxx;

如果返回值很复杂甚至可以再构造FORM表单自动提交向A域和接受页面,来个反调用。

这样提交后iframe中已经是A域自己的页面,并从参数中获取了B域目标页面的返回值,它就可以任意把返回值返回给原来提交的主页面了。

 

诗剑书生的专栏

补充:Web开发 , 其他 ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,