Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
支付宝通知| url问题| PHP_Php_Alipay - Fatal编程技术网

支付宝通知| url问题| PHP

支付宝通知| url问题| PHP,php,alipay,Php,Alipay,我一直在尝试为支付宝构建woocommerce插件,我从他们的文档中了解到: 我通过url请求付款(由几个参数组成,如notify_url、return_url等) 通过他们的网站登录支付 然后他们将我重定向到第一步提交的return_url(带有几个新参数和旧参数) 它们发送另一个通知url请求,其中包含通知id、通知状态和一些其他参数 之后,我必须确认我收到了通知 现在的问题是,我被重定向到返回url并获得期望值。但是应该由notify_url触发的代码没有被执行。但如果我将return\u

我一直在尝试为支付宝构建woocommerce插件,我从他们的文档中了解到:

  • 我通过url请求付款(由几个参数组成,如notify_url、return_url等)
  • 通过他们的网站登录支付
  • 然后他们将我重定向到第一步提交的return_url(带有几个新参数和旧参数)
  • 它们发送另一个通知url请求,其中包含通知id、通知状态和一些其他参数
  • 之后,我必须确认我收到了通知
  • 现在的问题是,我被重定向到返回url并获得期望值。但是应该由notify_url触发的代码没有被执行。但如果我将return\u url替换为notify\u url,当支付宝将我重定向到return\u url(在本例中为reuthn\u url=notify\u url)时,通知验证码将正确执行

    我正在使用他们的演示代码

    以下是配置:

    $gateway = "https://openapi.alipaydev.com/gateway.do?";
    $partner = "";
    $security_code = "";
    $_input_charset = "utf-8"; 
    $sign_type = "MD5"; 
    $transport= "http";
    $notify_url = "http://localhost/code/notify_url.php";
    $return_url = "http://localhost/code/return_url.php";
    

    注意:他们说他们网站的付款流程成功,然后将我重定向到返回url。

    其他人可以访问你的
    通知url
    ?另外,您正在使用他们的沙盒API吗?我正在本地主机中尝试。是的,我使用的是沙盒API。让我添加配置文件。支付宝可以通过互联网访问您的本地主机的
    notify\u url
    ?如果没有,它将无法工作。因为我使用localhost,支付宝将无法直接访问它,对吗?在这种情况下,如何在localhost中进行测试?如果您没有进行任何特殊更改,那么是的,这是不可能的。你可以试试。但不确定你是否必须向支付宝注册“ngrok”提供的新URL。此外,如果您正在使用WAMP,则必须使用
    联机
    选项。其他人是否可以访问您的
    通知url
    ?另外,您正在使用他们的沙盒API吗?我正在本地主机中尝试。是的,我使用的是沙盒API。让我添加配置文件。支付宝可以通过互联网访问您的本地主机的
    notify\u url
    ?如果没有,它将无法工作。因为我使用localhost,支付宝将无法直接访问它,对吗?在这种情况下,如何在localhost中进行测试?如果您没有进行任何特殊更改,那么是的,这是不可能的。你可以试试。但不确定你是否必须向支付宝注册“ngrok”提供的新URL。此外,如果您使用WAMP,则必须使用
    Put Online
    选项。