【问题标题】:PayPal IPN listener responsePayPal IPN 侦听器响应
【发布时间】:2012-05-20 11:45:39
【问题描述】:

在 PayPal 的沙盒中进行全面测试并让流程完美运行之后。我已经把它直播了,但它不工作。

我正在通过 notify_url 从 PayPal 接收 POST 数据。然后我在数据前面使用 cmd=_notify-validate 将其发送回 PayPal。

使用 PayPals 记录的代码,我正在使用它向 PayPal 发送消息。

$header .= "POST /cgi-bin/webscr HTTP/1.0\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: " . strlen($req) . "\r\n\r\n";
$fp = fsockopen ('ssl://www.paypal.com', 443, $errno, $errstr, 30);

(使用此代码获取响应)

$res = stream_get_contents($fp, 1024);

我得到的回复是:

HTTP/1.1 200 OK
日期:格林威治标准时间 2012 年 5 月 11 日星期五 20:51:28
X 框架选项:SAMEORIGIN
的Set-Cookie:cwrClyrK4LoCV1fydGbAxiNL6iG = SdeBuKBN39mjr3w791CHr_MlSkoBdDmbxpQOjT_WOicyD_Sg6BYZm8koiEv2-5XBUkCjpXQwFqIxIQgIyo3e7arO8015CVw96dpne2CNjbgc1CvpDlqXn72IBWq%7cW7uYn6Za7ljG4iLtLVcyFoPk8gZD7sr_S8WjwZrZWD8UXzE7KAH3bll9TVik3wbdCFlrZG%7csxrZZHSH5SWBGfrKsIU6Dz-K43j4h37efIkWFcVJVER0ncRxNJ0wANN1Dp3pZpV2PLxC1m%7c1336769488;域=.paypal.com;路径=/;安全的; HttpOnly
设置 Cookie:cookie_check=yes; expires=周一,2022 年 5 月 9 日 20:51:28 GMT;域=.paypal.com;路径=/;安全的; HttpOnly
设置 Cookie:navcmd=_notify-validate;域=.paypal.com;路径=/;安全的; HttpOnly
设置 Cookie:navlns=0.0;到期=格林威治标准时间 2032 年 5 月 6 日星期四 20:51:28;域=.paypal.com;路径=/;安全的; HttpOnly
设置 Cookie:Apache=10.73.8.50.1336769488653443;路径=/; expires=Sun, 04-May-42 20:51:28 GMT
变化:接受编码
严格的传输安全性:max-age=14400
连接:关闭
内容类型:文本/html;字符集=UTF-8
设置 Cookie:TSe9a623=bb3c8ce40a7f3f6d1c018255c9

我没有得到的是 INVALID 或 VERIFIED 响应。这是 PayPal 的全部输出。在沙盒中,我在最后一行得到了 VERIFIED,并且没有 Set-Cookie。

我没有收到 INVALID 或 VERIFIED 响应似乎很奇怪。

任何建议将不胜感激。

【问题讨论】:

    标签: php paypal-ipn


    【解决方案1】:

    您是否使用 fwrite/fputs 将请求写入套接字?此外,从响应的长度来看,您可能需要从流中读取超过 1024 个字节。这已经非常接近了。

    您可能希望循环读取响应:

    $resp = '';
    while (!feof($fp)) {
        $resp .= stream_get_contents($fp, 1024);
    }
    

    然后您可以使用以下方法将标题与正文分开:

    list($headers, $response) = explode("\r\n\r\n", 2);
    

    【讨论】:

    • 太棒了!!这就是问题所在。
    猜你喜欢
    • 2021-12-31
    • 2014-02-26
    • 2020-06-04
    • 2012-10-09
    • 2016-04-13
    • 2019-06-22
    • 1970-01-01
    • 2015-06-11
    • 2013-08-07
    相关资源
    最近更新 更多