以下问题,我们刚刚开始开发支付网关,不幸的是,目标api的文档几乎不存在,银行的支持也很糟糕。
在文档中,在Message Format AUTHORIZATION REQUEST下,我们找到了这个例子:
mid=12345&terminal=1234&version=3.1&command=CRAUTH&ref_no=3421_14120348_14120348&ref_date=20141203061048&service_id=11&cust_id=1&cur_abbr=THB&amount=300.00&backURL=https://www.yourshopreturnurl.com/
因此我们创建了网关(WooCommerce)并使用此表单传递我们的数组值:
$scb_args_array = array();
foreach($ccavenue_args as $param => $value) { $scb_args_array[] = "$param=$value"; }
$paramsJoinedNew = implode('&', $scb_args_array);
return '<form action="'.$live_url.'" method="post" id="ewire_payment_form">
<input type="hidden" name="bank_Values" value="'. $paramsJoinedNew .'" />
<input type="submit" class="button-alt" id="submit_ewire_payment_form" value="'.__('Pay via bank', 'woothemes').'" /> <a class="button cancel" href="'.$order->get_cancel_order_url().'">'.__('Cancel order & restore cart', 'woothemes').'</a>
</form>';}
此表格的结果是:
Array ( [bank_Values] => mid=12345&terminal=1234&version=3.1&command=CRAUTH&ref_no=3421_14120348_14120348&ref_date=20141203061048&service_id=11&cust_id=1&cur_abbr=THB&amount=300.00&backURL=https://www.yourshopreturnurl.com/ )
将此提交给银行会导致银行的空白页面没有任何调试信息。
我们假设ARRAY ( [bank_Values] =>
是问题所在,有没有办法从帖子信息中去掉那部分,所以它只发送原始值,就像他们的例子一样?
也许有人有另一个想法可以解决问题。
感谢您的帮助!
答案 0 :(得分:1)
如果要发送原始数据,则为每个数据创建一个单独的输入字段,如下所示
<input type="hidden" name="mid" value="12345" />
<input type="hidden" name="version" value="3.1" />