如何从 woocommerce 自定义支付网关中的 process_payment 函数执行 POST 重定向?

Posted

技术标签:

【中文标题】如何从 woocommerce 自定义支付网关中的 process_payment 函数执行 POST 重定向?【英文标题】:How can I do a POST redirect from the process_payment function in a woocommerce custom payment gateway? 【发布时间】:2016-11-18 03:40:23 【问题描述】:

我希望从我的 Wordpress/Woocommerce 自定义支付网关中的 process_payment 进行重定向。

要进行 GET 重定向,您可以:

function process_payment( $order_id ) 
    //some code here
    //CPN is a value entered by user from custom payment field
    $cpn = $_POST['cpn'];

    return array(
        'result'   => 'success',
        'redirect' => 'https://www.sandbox.bankserver.com/cgi-bin/webscr?test_ipn=1&CPN='. $cpn
    );

在自定义支付字段中从用户接收的值是安全敏感的,因此银行不希望通过 GET 接收它们。我怎样才能发帖?

我将 POST 到银行 URI...这将允许用户在银行页面上输入 CVV,然后重定向回我的 Wordpress 网站。

【问题讨论】:

【参考方案1】:

简而言之,我找到了一个更好的方法来做到这一点。我向 3d 安全服务器发出请求,并将详细信息存储在 SESSION 中。然后我可以从 woocommerce_receipt_ 页面访问这些内容,然后我在该页面上创建了一个表单并将其发布到银行 URI。

【讨论】:

以上是关于如何从 woocommerce 自定义支付网关中的 process_payment 函数执行 POST 重定向?的主要内容,如果未能解决你的问题,请参考以下文章

Woocommerce 自定义支付网关重定向

WooCommerce Stripe 支付网关自定义 javascript 冲突

在 Woocommerce 中为特定支付网关添加自定义费用

根据支付网关和国家/地区对 WooCommerce 自定义费用征税

使用重定向的 Woocommerce 自定义支付网关工作流程

Woocommerce 中特定支付网关的结帐附加字段