0

我有一个由 Magento 提供支持的电子商务网站,但现在我需要在 Magento 和公司的管理软件之间建立连接。

流程应该是这样的:

  1. 用户在他的购物车里放了一些东西
  2. 用户完成结帐过程
  3. 在用户用 Paypal 支付了全部费用后,Magento 应该发送一个 HTTP 请求(可能是 POST,带有订单的数据)到一个外部服务器,该服务器处理请求并处理接收到的数据。

我的问题是我不知道如何在结帐过程后从 Magento 发送带有订单数据的请求。我认为这是使用电子商务的公司的常见情况。你对此有什么想法吗?谢谢。

4

2 回答 2

2

您可以使用观察者来获取结帐后事件,并且在您的观察者上,您可以将某种 curl 帖子发送到您的外部服务器。(就像@Prasath Albert 说的)

看看那里做一个观察者: http: //www.magentocommerce.com/wiki/5__-_modules_and_development/0__-_module_development_in_magento/customizing_magento_using_event-observer_method

您正在寻找 checkout_cart_save_after。祝你好运,如果你需要别的东西,请告诉我。

编辑:

使用本教程来做你的观察者http://www.magentocommerce.com/wiki/5__-_modules_and_development/0__-_module_development_in_magento/customizing_magento_using_event-observer_method 100% 像这样。创建新模块来做到这一点。

那么你的观察者方法可以是这样的:

function observermethod($observer){
    $observer->getEvent->getOrder()->getData();
}
于 2012-10-25T10:48:30.827 回答
1

您可以使用 CURL 来实现这一点。为了这

1)在外部服务器中添加一个页面来处理来自magento的输入。

2) 编辑 Magento Cart 功能,向外部服务器发送请求。

例如:您可以使用 CURL 发出此请求。

   $data = "item=".$item;//input data
   $url="http://External server/handler.php";
   $handle = curl_init($url);
   curl_setopt($handle, CURLOPT_POST, true);
   curl_setopt($handle, CURLOPT_POSTFIELDS, $data);
   curl_exec($handle);
于 2012-10-25T10:45:59.077 回答