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

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

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

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

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

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

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

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


已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页