Веб-служба Prestashop для возврата JSON

Веб-служба Prestashop для возврата JSON

30.05.2013 12:37:21 Просмотров 42 Источник

После обширного поиска по интернету я уверен, что Prestashop не возвращает данные в формате JSON, он возвращает только в формате XML (что, к сожалению, приводит к проблеме кросс-доменного доступа).

Теперь я пытаюсь преобразовать XML (возвращенный Prestashop) в JSON. Я хочу написать php-код, который мог бы взять XML из веб-службы и отправить обратно JSON. Для этого я перепробовал много учебников, но напрасно. Преобразованный JSON не имеет значения в нем, поэтому бесполезен. Методы, которые я пробовал, перечислены ниже.

http://www.sitepoint.com/php-xml-to-json-proxy/
PHP преобразование XML в JSON

XML для преобразования:

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

Возвращенный JSON:

"name":{"language":{"@attributes":{"id":"1"}}}
У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/16831487/prestashop-web-service-to-return-json#comment24274016_16831487
Я никогда не использовал веб-сервис Prestashop, но может быть проще обойти код, в котором Prestashop создает XML, и заменить его кодом, в котором вы создаете JSON, который вам нужен. Но это всего лишь идея.

Ответы - Веб-служба Prestashop для возврата JSON / Prestashop Web service to return JSON

Mikuso

03.11.2014 08:09:17

Я не знаю об исторической поддержке этого, но...

В последней версии Prestashop (в настоящее время v1.6.0.9) вы можете получить ответ JSON от любого запроса API WebService, добавив output_format=JSONв строку запроса запроса.

Например. http://example.prestashop.com/api/products?output_format=JSON

https://stackoverflow.com/questions/16831487/prestashop-web-service-to-return-json/26719258#comment81049405_26719258
Все еще работает в 1.7.2, этот ответ должен быть принят.
https://stackoverflow.com/questions/16831487/prestashop-web-service-to-return-json/26719258#comment83454448_26719258
К вашему сведению, значение output_format чувствительно к регистру. Поэтому, если это не работает, убедитесь, что вы используете JSON вместо json.
Albert Fajarito

13.03.2015 01:12:00

PrestaShop есть заливка(инструменты::jsonEncode([ассоциативный массив])) для AJAX вернуться или просто удалить умирать за Аякс не вернуть.

Jose Lorenzo

27.07.2018 05:44:18

Использование php pear " XML_Serializer":

{
  "product": {
    "id_category_default": "XXX",
    "id_tax_rules_group": "1",
    "type": "simple",
    "id_shop_default": "1",
    "reference": "XXXXXXXX",
    "price": "XX.XXXXXX",
    "active": "1",
    "redirect_type": "404",
    "id_product_redirected": "0",
    "available_for_order": "1",
    "condition": "new",
    "show_price": "1",
    "indexed": "0",
    "visibility": "both",
    "advanced_stock_management": "0",
    "link_rewrite": {
      "language": {
        "_attributes": {
          "id": "1"
        },
        "_content": "ipod-nano"
      }
    },
    "name": {
      "language": {
        "_attributes": {
          "id": "1"
        },
        "_content": "iPod Nano"
      }
    },
    "associations": {
      "categories": {
        "category": {
          "id": "XXX"
        }
      },
      "stock_availables": {
        "stock_available": {
          "id": "XXXX",
          "id_product_attribute": "X"
        }
      }
    }
  }
}

Смотрите эту ссылку : https://www.prestashop.com/forums/topic/602449-aporte-webservice-prestashop-16-json-request-post-y-put/#elComment_2930631

Behnam.sh

28.10.2019 02:04:30

только добавить ?output_format=JSON в URL-адрес

http://example.com/api/products?output_format=JSON

Закрыть X