php - ipn 不返回 VERIFIED 或 INVALiD

标签 php paypal paypal-ipn

我正在使用 Michas ipn 脚本,我收到了来自 PayPal 的 VERIFIED 和 OK 200,但这部分脚本似乎停止了。我添加了//notations

    if ($this->use_curl) $this->curlPost($encoded_data); 
    else $this->fsockPost($encoded_data); 
    if (strpos($this->response_status, '200') === false) { 
        throw new Exception("Invalid response status: ".$this->response_status);
    } 
    throw new Exception("status ".$this->response_status);//returns status 200
    throw new Exception("status ".$this->response);//see below
    if (strpos($this->response, "VERIFIED") !== false) { 
        return true; throw new Exception("Verified");//nothing returned
    } elseif (strpos($this->response, "INVALID") !== false) { 
        return false;  throw new Exception("Invalid");//nothing returned

    } else {
        throw new Exception("Unexpected response from PayPal.");
    }

下面是 paypal 使用 throw new Exception("status ".$this->response); 返回的内容;

    [19-Oct-2015 14:59:53 UTC] HTTP/1.1 200 OK
    Server: Apache
    X-Frame-Options: SAMEORIGIN
    Cache-Control: max-age=0, no-cache, no-store, must-revalidate
    Pragma: no-cache
    Paypal-Debug-Id: fdea911830b4f
    Cache-Control: max-age=0, no-cache, no-store, must-revalidate
    Pragma: no-cache
    Content-Type: text/html; charset=UTF-8
    DC: slc-b-origin-www-2.paypal.com
    Date: Mon, 19 Oct 2015 14:59:47 GMT
    Content-Length: 8
    Connection: close
    Set-Cookie: cwrClyrK4LoCV1fydGbAxiNL6iG=xW6oYJfS6eHsqsgzQsbhMbE7-VbWj_1d-cNcQrxwKKa-56EbhXpjNMeHUi8wgEe_5J_Dtv9ksoVEE-fvmRQgjZzNrt6UX4Vc-vnhF4q-ymaA7GTWHgypoE-4nnN4eGGmxT8ekVletsOzZuSkcpr2uCuZ_o_2qe4gZnucegLPdnP1H6wLCQSh9vAeMUUlKG_TO92-4NA_LvcAtk83p7uwjzB7L8U1c2vvLivfiS-g3j6oKowAWAhOYtwLlLEVvnpXoWAOyGtPZJNbLDF_hub-VCdh9PA_4UhvMQYJyHv3nSzqvDwqhklL1fk87t3lLzyizpPkZweG6mi-iQyBk4PgS_merjRIESmqD0uNeJL_EIqAkBEZilxWwHmMKskh07SYx146nytFFfAKk8kFQ58_uZ6mxeX9EyBPsUg6z2xMC8OrTyPDqaWH8038mUW;
    domain=.paypal.com; 
    path=/; Secure; HttpOnly
    Set-Cookie: cookie_check=yes; expires=Thu, 16-Oct-2025 14:59:47 GMT; domain=.paypal.com; path=/; Secure; HttpOnly
    Set-Cookie: navcmd=_notify-validate; domain=.paypal.com; path=/;     Secure; HttpOnly
    Set-Cookie: navlns=0.0; expires=Wed, 18-Oct-2017 14:59:47 GMT; domain=.paypal.com; path=/; Secure; HttpOnly
    Set-Cookie: Apache=10.74.8.134.1445266787217963; path=/; expires=Wed, 11-Oct-45 14:59:47 GMT
    Set-Cookie: X-PP-SILOVER=name%3DLIVE6.WEB.1%26silo_version%3D880%26app%3Dappdispatcher%26TIME%3D1661281622; domain=.paypal.com; path=/; Secure; HttpOnly
    Set-Cookie: X-PP-SILOVER=; Expires=Thu, 01 Jan 1970 00:00:01 GMT
    Set-Cookie: Apache=10.74.8.69.1445266787199279; path=/; expires=Wed, 11-Oct-45 14:59:47 GMT
    Set-Cookie: AKDC=slc-b-origin-www-2.paypal.com; expires=Mon, 19-Oct-2015 15:29:47 GMT; path=/; secure
    Strict-Transport-Security: max-age=63072000

    VERIFIED

我不确定从这里到哪里去?

最佳答案

问题在于 PayPal 遵守 SHA-256。我发现 Wade Schuler 的这个脚本是从原始的 Micah Carrick IPN fork 出来的,这里是链接 https://github.com/WadeShuler/PHP-PayPal-IPN要让它工作,请添加位于 https://knowledge.symantec.com/support/ua-support/index?page=content&actp=CROSSLINK&id=SO5624 的 G5 crt包含的一个将引发握手错误。希望对您也有帮助!

关于php - ipn 不返回 VERIFIED 或 INVALiD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33222079/

相关文章:

Paypal IPN 返回在沙盒上验证,但在实时无效

php - 表单标签内的 Paypal 表单重定向

paypal - Payflow Pro 定期计费是否支持 IPN?

php - 如何修复 "load column of a database with double click on a td tag with jquery in a drop down menu"

php - GROUP BY 查询仅显示与 html 表中的日期关联的一行

php - 使用 PHP 在一条 SQL 语句中进行多个查询

magento - Paypal Payments Pro 是否直接与 magento 社区合作以接受信用卡进行定期计费?

paypal - WinHTTP.WinHTTPRequest.5.1 在 TLS 1.2 之后不适用于 PayPal 沙箱

PayPal Payments Pro - 跳过 IPN

php - 在 1 个数据库列中更新多个结果