Magento API 的 Web 服务响应

问题描述 投票:0回答:2

有人可以对以下问题提供一些说明吗?我相信以下问题很有争议,但我只想知道能够启发我的事实,当然还有许多其他人正在查看这个一般性问题帖子。

  1. 为什么 Magento API 以 XML 格式而不是 JSON 格式生成 Web 服务响应? 以 XML 格式生成响应应该有一些优点。我主要想知道那些优点
  2. 在 Magento 术语中,提到了两个 API 版本 - “Normal API”(api/soap)和“API v2(api/v2_soap)”。这两个版本之间有什么区别(主要是优点),以及 WSDL 适用于哪里?
  3. 如果我要创建新的 Web 服务,我应该针对 SOAP v1 格式还是 SOAP v2 格式,还是这两种格式?
  4. Web 服务能否根据我的要求在 Magento 中创建 WSDL 的通用定义? 我想要的是我想知道是否可以动态生成任何特定Magento API模块的“
    wsdl.xml
    ”文件(驻留在Magento模块的“
    etc
    ”文件夹中)?如果我提供所需的 API 方法名称,以及所有属性名称、类型以及响应数据类型,那么我会得到“动态生成的
    wsdl.xml
    文件,其中正确提到了所有复杂类型、方法和消息?”

如果可能,请提供一些好的链接,从那里可以彻底清除 Magento Web 服务的蜘蛛网。 另外,请考虑我作为新手在 Web 服务这一领域的专业知识,以便根据任何有价值的输入,我可以重新构建问题。

非常感谢大家的帮助。

我问这个问题的主要目的是我想制作新的自定义API,可以被任何系统使用,无论是ERP / CRM / SAP / Cloud /任何一般系统。

附注
我尝试在程序员堆栈交换区域发布这个问题,但由于缺乏可用的必需标签(如 magentowsdlsoap),我不得不将其发布在这里。如果可能和需要,请将此问题转移到适当的堆栈交换区。

web-services magento magento-soap-api
2个回答
1
投票
  1. API 不是用于 ajax(前端),而是用于将 Magento(前端商店)与不同的 ERP、CRM、SAP(后端工具)系统集成 - 导入数据并获取报告。这就是它使用 XML 的原因。

  2. 这不是magento 的术语。这样做主要是为了遗留支持。所以你必须使用最新的 - v2.

  3. WSDL 的一般定义是什么意思? WSDL 描述已发布的功能 - 可用的调用/资源。如果您不需要它,您需要覆盖配置文件,以便不发布所有内容,只发布必要的内容,或者执行此表单管理区域。

您能更清楚、更技术性地告诉我们,您需要使用 API 做什么?


1
投票

该 API 非常适合您想要从 Magento 中获取某些内容的普通 PHP 编程。 “普通”API 可以很好地与 PHP 配合使用,此外,与其他 API 生成的 XML 相比,生成的 XML 非常容易使用。

有人说 Magento API 很慢,事实确实如此。但是,如果您将相同的代码移至 Magento 程序中,那么仍然需要很长时间,API 代码并不是太大的负担。

© www.soinside.com 2019 - 2024. All rights reserved.