【问题标题】:Magento external accessMagento 外部访问
【发布时间】:2016-08-04 23:56:12
【问题描述】:

我有一个 Shopify 应用程序并愿意将其移植到 Magento。 给定一个正在运行的 Magento 电子商务 URL,有没有办法:

  • 检索 [token / OAuth] 以使用 RESTFul / SOAP / 任何方式从 Magento 访问数据?
  • 使用 Magento 公开的 API,将外部 URL 注册为 webhook 端点,以便在创建订单或创建/更新/销毁产品时接收通知?
  • 如果这两种情况都可以,您如何处理所有这些不同的 Magento 版本?

【问题讨论】:

    标签: rest magento webhooks


    【解决方案1】:

    检索 [token / OAuth] 以使用 RESTFul / SOAP / 任何方式从 Magento 访问数据?

    是的。 REST API in Magento 使用 OAuth 身份验证过程并提供获取令牌等所需的端点。

    使用 Magento 公开的 API,将外部 URL 注册为 webhook 端点,以便在创建订单或创建/更新/销毁产品时接收通知?

    没有。 Magento 包含event driven architecture (EDA),因此向外部端点提供数据的最佳方式是向 Magento 中的create an observer 连接,将其连接到您要监控的任何事件(例如,sales_order_place_after for new orders)并使用观察者将数据发送到您的外部端点。

    从技术上讲,您提出的问题是可能的,但您需要使用自定义 API 端点自己实现它,该端点按照上述观察者模式注册新的观察者。

    如果这两种情况都可能,你如何处理所有这些不同的 Magento 版本?

    我不确定我是否理解这个问题,但是当您开始使用 Magento 时,您会选择要使用的版本。显然,您应该选择使用最新版本的 Magento 1 或 2,因为它在功能和安全补丁方面将是最安全和最新的,但是您的主要问题是您是否要使用 Magento 1或 Magento 2。网上有很多关于此的比较,但我建议您使用 Magento 2,纯粹是因为 Magento 1 将在几年后被弃用。

    【讨论】:

    • 我要澄清我的问题。我们不拥有任何 Magento 实例。我们目前作为 Shopify 应用程序提供服务。当用户在他的商店中安装应用程序时,应用程序会与我们的 API 对话。我们的 API 注册自己以接收事件(我们没有运行 Shopify 的代码,这样的东西不存在)。我们希望为现有的 Magento 用户提供相同级别的服务,因此我的问题是“您如何支持所有版本”。我们希望我们的 API 将自己注册为订单/产品的端点。我们不打算“开始使用 Magento”,我们的客户使用 Shopify 和 Magento。
    • 嗨@Doodloo - 你的澄清不会改变我回答中的要点。 Magento 调度您在 Magento 中定义的事件,它无法立即注册来自外部供应商的事件。
    • 我想我明白了:您基本上是在建议我们创建一个可以增强 Magento 功能的 Magento 扩展,对吗?但在这种情况下,问题就转移了:一旦有人使用 OAuth 授权我们,我们如何点击他的 magento 实例来自动安装我们的扩展程序?
    • 是的,完全正确。回复:新问题 - 你不要那样做。客户需要自己安装您的模块。可能不是最适合这项工作的孤子?
    • Re: 不是最好的解决方案,但至少是一个解决方案。回顾一下:我们首先需要从客户的 Magento 实例中获取 OAuth 令牌。然后我们必须指示他安装扩展程序。听起来是一个很好的解决方案。也许第一步可以由扩展自动处理。会调查的。
    猜你喜欢
    • 2017-01-12
    • 1970-01-01
    • 2012-04-16
    • 1970-01-01
    • 1970-01-01
    • 2011-06-18
    • 1970-01-01
    • 2013-08-15
    • 1970-01-01
    相关资源
    最近更新 更多