Magento REST API故障:xml无效

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Magento REST API故障:xml无效相关的知识,希望对你有一定的参考价值。

看起来我的问题与这个问题相同:Magento Rest Api Invalid XML但它仍然没有得到回答..

我刚刚在我的localhost上安装了magento 1.9和示例数据,并尝试测试REST API。我在管理面板中将REST角色和REST属性设置为ALL。但是,当我尝试在浏览器中输入以下URL:http://magentohost/api/rest/products?limit=2

我收到了回复:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
  <script/>
  <SOAP-ENV:Body>
    <SOAP-ENV:Fault>
      <faultcode>Sender</faultcode>
      <faultstring>Invalid XML</faultstring>
    </SOAP-ENV:Fault>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

error_log为空,

访问日志:

GET /magentohost/api/rest/products?limit=2 HTTP/1.1" 500

看起来我在设置中遗漏了一些东西..感谢您的帮助!

答案

您需要编辑.htaccess文件。在.htaccess的第12行取消注释“Options -Multiviews”行。

另一答案

如果您在获取wsdl时遇到问题,请确保在网址末尾有?wsdl。例如:

https://dev2.mydomain.org/index.php/api/v2_soap/index/

会说“无效的XML”但是

https://dev2.mydomain.org/index.php/api/v2_soap/index/?wsdl

将工作。

另一答案

对于我为.Net Core C#(using this)生成的Magento soap客户端,我只需使用默认构造函数创建客户端,而不是自己提供端点和绑定。默认构造函数设置客户端的许多参数,包括端点URL,安全模式,允许cookie等。

以上是关于Magento REST API故障:xml无效的主要内容,如果未能解决你的问题,请参考以下文章

Magento 2 REST API入门

Magento的REST API URL

如何在 C# 中使用 Magento 2 API 创建 REST 请求?

Magento 2 REST API

如何在 Magento 中使用 REST API 获取产品信息

用于 PayPal 模块的 Magento 2 REST api