Magento 贝宝 IPN 不工作
Magento Paypal IPN is not working
我正在使用 Magento 1.8.1 版本,我想设置 Paypal IPN 来更新我的订单状态,但是当我 运行 来自 PayPal 的 IPN 模拟器测试不起作用时会抛出 HTTP 错误看到这个 http://puu.sh/hTQaP/af2473710b.png.
请告诉我如何解决这个问题。
经过深思熟虑,终于找到了解决办法。这是由于 "USER Agent" HTTP Header 请求引起的。您可以在 Ipn.php 文件中更新它。只需在 app/code/core/Mage/Paypal/Model/Ipn.php 上替换此函数的以下行(不要应用于核心文件。将其添加到本地目录)
protected function _postBack(Zend_Http_Client_Adapter_Interface $httpAdapter)
第 143 行(在 magento 1.8.1 中)
$httpAdapter->write(Zend_Http_Client::POST, $this->_config->getPaypalUrl(), '1.1', array(
'Connection: close',
), $sReq);
替换为
$httpAdapter->write(Zend_Http_Client::POST, $this->_config->getPaypalUrl(), '1.1', array(
'Connection: Close', 'User-Agent: your_company_name'
), $sReq);
我正在使用 Magento 1.8.1 版本,我想设置 Paypal IPN 来更新我的订单状态,但是当我 运行 来自 PayPal 的 IPN 模拟器测试不起作用时会抛出 HTTP 错误看到这个 http://puu.sh/hTQaP/af2473710b.png.
请告诉我如何解决这个问题。
经过深思熟虑,终于找到了解决办法。这是由于 "USER Agent" HTTP Header 请求引起的。您可以在 Ipn.php 文件中更新它。只需在 app/code/core/Mage/Paypal/Model/Ipn.php 上替换此函数的以下行(不要应用于核心文件。将其添加到本地目录)
protected function _postBack(Zend_Http_Client_Adapter_Interface $httpAdapter)
第 143 行(在 magento 1.8.1 中)
$httpAdapter->write(Zend_Http_Client::POST, $this->_config->getPaypalUrl(), '1.1', array(
'Connection: close',
), $sReq);
替换为
$httpAdapter->write(Zend_Http_Client::POST, $this->_config->getPaypalUrl(), '1.1', array(
'Connection: Close', 'User-Agent: your_company_name'
), $sReq);