我有一个付款单。当我提交该表单时,我会在成功提交时将其重定向到PAYONE以获取付款信息。该页面将重定向到我的网站的成功链接以获取更多详细信息。Iframe payone重定向父母
现在我的问题开始: 我在同一窗口中将我的付款通道(PAYONE)页面打开到iframe中。但是当我成功提交信息并点击提交。然后它将在iframe中重定向。
如何重定向到我在发布数据中提供的成功链接?
我有一个付款单。当我提交该表单时,我会在成功提交时将其重定向到PAYONE以获取付款信息。该页面将重定向到我的网站的成功链接以获取更多详细信息。Iframe payone重定向父母
现在我的问题开始: 我在同一窗口中将我的付款通道(PAYONE)页面打开到iframe中。但是当我成功提交信息并点击提交。然后它将在iframe中重定向。
如何重定向到我在发布数据中提供的成功链接?
由于安全和现在控制您的支付提供商,处理这个问题的最简单方法是让客户从支付提供商处重定向到“登陆”iframe页面。然后,该页面将调用函数整个页面重新加载到一个新的URL ...
在父窗口中: 把这个部分
<script type="text/javascript">
function payment_redirect(url) { document.location=url;}
</script>
这时正好有一个简单的iframe的登陆页面触发更新
<html><head><title></title></head>
<body onload="parent.payment_redirect('http://www.google.com');">
If you are not redirect in 5 seconds, please click here... etc..
</body></html>
注意我是如何包含在父窗口的功能,然后把它称为从通过“父”的iframe页面 - IFRAME安全不会让您重定向或直接从iframe中刷新页面...
感谢您的回答,我将尝试此操作。谢谢!!! – user567792 2011-01-10 04:14:52
我知道这个Q & A比泥土还旧,但我想我会澄清其他人寻找这些信息。
由于重定向将在同一个域中的页面上,所以跨域脚本安全性不起作用,因此您不需要在iframe父级上放置任何代码,只需将付费提供程序返回一个页面如下:
<html><head><title></title></head>
<body onload="parent.location='http://www.google.com';">
If you are not redirect in 5 seconds, please click here... etc..
</body></html>
因为这个问题被提出,PAYONE已纳入iframe的破坏到他们的API。当创建链接或POST参数给付款形式,包括此参数:
'targetwindow' => 'top'
其它允许的值是:
从付款单返回的用户将被发送到指定的目标窗口。
通常付款提供商不希望你使用iframe来处理付款......它更多的是安全性的事情......我真的很惊讶他们没有检测到iframe ......(即使是stackoverflow也不允许它的内容被加载到iframe)...如果你决定保留iframe,我只是围绕怪癖设计页面...只有其他的事情你可以做的是一旦付款完成有一个重定向/刷新页面加载到iframe然后重新加载页面... – CarpeNoctumDC 2011-01-08 06:08:07