2013-05-30 4 views
9

Nach umfangreicher Suche über das Internet bin ich sicher, dass Prestashop keine Daten im JSON-Format zurückgibt, gibt es nur im XML-Format (was zu domainübergreifenden Zugriff leider führt).Prestashop Web-Service zur Rückkehr JSON

Jetzt versuche ich XML (von Prestashop zurückgegeben) in JSON zu konvertieren. Ich möchte PHP-Code schreiben, der XML vom Web-Service nehmen und JSON zurücksenden könnte. Zu diesem Zweck habe ich viele Tutorials vergeblich versucht. Der konvertierte JSON hat keinen Wert, ist also nutzlos. Die Methoden, die ich versuchte, sind unten aufgeführt.

http://www.sitepoint.com/php-xml-to-json-proxy/
PHP convert XML to JSON

XML zu konvertieren:

<name> 
<language id="1" xlink:href="http://localhost/prestashop/api/languages/1"> 
<![CDATA[ iPod Nano ]]> 
</language> 
</name> 

Retour JSON:

"name":{"language":{"@attributes":{"id":"1"}}} 

ich für die Hilfe in dieser Hinsicht hoffen. Vielen Dank.

+2

Ich habe noch nie den Prestashop-Webservice verwendet, aber es ist möglicherweise einfacher, den Code zu umgehen, in dem Prestashop das XML erstellt und es durch einen Code ersetzt, mit dem Sie den benötigten json erstellen. Das ist nur eine Idee. – romainberger

Antwort

30

Ich weiß nicht, über historische Unterstützung für diese, aber ...

In der neuesten Version von Prestashop (derzeit v1.6.0.9), können Sie eine JSON-Antwort von jeder WebService API-Anfrage erhalten, indem Anhängen output_format=JSON an Ihre Anfrage Abfrage Zeichenfolge.

z.

+1

Funktioniert noch in 1.7.2, diese Antwort sollte akzeptiert werden. – mikiqex

+0

FYI, output_format-Wert unterscheidet zwischen Groß- und Kleinschreibung. Also, wenn es nicht funktioniert, stellen Sie sicher, dass Sie JSON anstelle von Json verwenden. – Kiddo

-2

Prestashop hat die Form (Tools :: jsonEncode ([Assoziatives Array])) für Ajax Return oder einfach nur sterben für Non Ajax Return.

Verwandte Themen