Magento rest api: как получить заказы по идентификаторам?

Как получить несколько заказов, отфильтрованных по идентификатору из magento с помощью rest API?

Я пытался использовать http://192.168.0.104:4422/magento/api/rest/orders?filter[1][attribute]=entity_id&filter[1][in]=1&filter[1][in]=3

но он возвращает меня:

<magento_api>
<messages>
<error>
<data_item>
<code>401</code>
<message>oauth_problem=signature_invalid</message>
</data_item>
</error>
</messages>
</magento_api>

Но если я использую запрос только с одним фильтром in параметром http://192.168.0.104:4422/magento/api/rest/orders?filter[1][attribute]=entity_id&filter[1][in]=1 - он отлично работает.


person Maxim Kitsenko    schedule 09.06.2014    source источник
comment
Вы создали для него роль остальных пользователей?   -  person leo    schedule 10.06.2014
comment
Да, magento и все остальное настроено хорошо, проблема проявляется только в запросе с несколькими параметрами 'in'.   -  person Maxim Kitsenko    schedule 10.06.2014
comment
@burzhuy, тебе удалось это решить? мне тоже интересно узнать.   -  person d4v1dv00    schedule 22.04.2015
comment
@ d4v1dv00 посмотри мой ответ   -  person Maxim Kitsenko    schedule 23.04.2015


Ответы (3)


У меня проблема была в фильтрах(пробовал на 1.7.0.1). Похоже, в некоторых версиях magento есть проблемы с фильтрами. Таким образом, вы должны использовать 1 фильтр, после того как этот фильтр приведет к вашему коду.

person Maxim Kitsenko    schedule 22.04.2015

Я нашел ответ в этом сообщении блога . Короче говоря, если вы будете следовать этой структуре (это было для моего варианта использования со списком продуктов):

http://magentohost.com/api/rest/products?filter[1][attribute]=entity_id&filter[1][in][1]=1&filter[1][in][2]=3

Вы будете установлены! (это дает два продукта, подобных приведенным выше, с идентификаторами 1 и 3). Обратите внимание на [1] и [2] после обоих [in]. Я бы хотел, чтобы у Magento была лучшая документация для этого.

person Joao    schedule 09.09.2015

Попробуйте агрегировать значения.

complexFilter { key = "increment_id", value = new associativeEntity {key = "in", value = "1,2,3"} };
person Community    schedule 03.11.2016