我集成Payflow先进到我们的网站,并在沙盒测试。我有一个页面上有一个“立即付款”按钮。我有所有必要的帐户,托管页面等,我成功地获得了安全令牌我已经尝试了两种方式访问我的托管页面,使用这些令牌:
1) Pay Now按钮打开另一个HTML页面,其中我的托管页面被指定为iframe的源,如下所示
<p>This is a test of hosted pages</p>
<iframe src="https://payflowlink.paypal.com?SECURETOKEN=73nQZctvqskKbJooHoBr9DQlB&SECURETOKENID=DTesting5991376569967&MODE=TEST& BILLTOSTREET=33 Ames Road&BILLTOCITY=Groton&BILLTOSTATE=MA&BILLTOZIP=01451&BILLTOPHONE=408-110-7975" name="test_iframe" scrolling="no" width="700px" height="700px"></iframe>当此页面打开时,我的托管页面在iframe中,并且所有信息都是正确的。几秒钟后,PayPal代码中的某些内容会将浏览器重定向到完整的托管页面。这一整页上的所有内容都是正确的。
2)在这个方法中,我绕过了中间的超文本标记语言页面,使用超文本标记语言表单直接访问PayFlow。表单的ACTION设置为与方法1中的src完全相同的字符串,并有一个按钮用于提交表单。如图所示
<form id='payment' action="https://payflowlink.paypal.com?SECURETOKEN=73nQZctvqskKbJooHoBr9DQlB& SECURETOKENID=DTesting5991376569967&MODE=TEST&BILLTOSTREET=33 Ames Road&BILLTOCITY=Groton&BILLTOSTATE=MA&BILLTOZIP=01451&BILLTOPHONE=408-110-7975">
<input display="inline" type='button' id='paypalbutton' value="Pay with Credit Card or PayPal" class='buttons' onClick="buttonclick('ccpay');">
</form>提交表单时,将显示无效的商家消息,并且不显示任何托管页面。
我不关心我使用哪种方法,只要它能正确工作。在方法1中,如何避免重定向?在方法2中,为什么我会得到invalid merchant错误?
谢谢
发布于 2013-08-16 04:35:17
您的<form>标记中没有method="POST"。这会导致您的浏览器默认使用GET方法提交表单。这反过来会导致浏览器从URL中剥离所有查询参数,从而产生一个空请求。
因此,解决此问题的方法是将method="POST"添加到<form>标记中。
https://stackoverflow.com/questions/18254057
复制相似问题