Magento REST API 故障:无效 xml

Magento REST API fault: invalid xml

看来我的问题与这个问题相同:Magento Rest Api Invalid XML 但仍未得到答复..

我刚刚在我的本地主机上安装了带有示例数据的 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为空,

access_log:

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

看来我在设置中漏掉了什么.. 感谢您的帮助!

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

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

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

会说 "Invalid XML" 但

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

会起作用。

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