Bigcommerce — размещение продуктов в API

#xml #api #e-commerce #bigcommerce

#xml #API #электронная коммерция #bigcommerce

Вопрос:

Я пытаюсь разместить продукт в своей промежуточной зоне bigcommerce. До сих пор ответ BC api был полезен, указывая на то, почему моя XML-схема не соответствовала требованиям, но теперь он возвращает только ошибку 500.

 <product>
 <name>xbox</name>
 <type>physical</type>
 <description>this is a test item</description>
 <price>499.99</price>
 <categories>
  <categories>18</categories>
 </categories>
 <availability>available</availability>
 <weight>0.5</weight>
</product>
 

Поскольку api успешно проанализировал мой xml, чтобы указать на ошибки, я уверен, что мои заголовки верны (applicaiton / xml), а сама ошибка представляет собой ошибку 500 с сообщением «Произошла ошибка при обработке запроса»

Я обратился к странице BC Api для этой процедуры и даже зашел так далеко, что имитировал объект json, который они предоставляют.

 {
"name": "xbox",
"type": "physical",
"description": "this is a test item",
"price": "499.99",
"categories": { "categories": "18" },
"availability": "available",
"weight": "0.5"
 

}

Приведенный выше json опубликован просто отлично (после изменения моего заголовка на application / json). Ради всего святого, почему XML не проходит? Я размещал клиентов и заказы через BC без каких-либо проблем, но это меня беспокоит.

Ответ №1:

У меня была такая же проблема при публикации продуктов в BigCommerce. Решение, которое я нашел, было очень простым. При размещении товара только с одной категорией категория должна быть включена дважды. Я понятия не имею, почему, но это то, что заставило его работать для меня.

 <product>
 <name>xbox</name>
 <type>physical</type>
 <description>this is a test item</description>
 <price>499.99</price>
 <categories>
   <category>18</category>
   <category>18</category>
 </categories>
 <availability>available</availability>
 <weight>0.5</weight>
</product>
 

Обязательно используйте «category» в качестве имени элемента внутри массива «categories».

ОБНОВЛЕНИЕ: я только что понял, что не включил формат JSON, с которым вы работаете. Это проще.

 "categories" : [ 18, 18],
 

Обязательно используйте квадратные скобки.

Комментарии:

1. Это странно, я не видел этой проблемы.

Ответ №2:

Я думаю, проблема в том, как у вас есть данные о вашей категории. Попробуйте использовать значение вместо категорий в массиве категорий.

 <product>
 <name>xbox</name>
 <type>physical</type>
 <description>this is a test item</description>
 <price>499.99</price>
 <categories>
  <value>18</value>
 </categories>
 <availability>available</availability>
 <weight>0.5</weight>
</product>
 

Ответ №3:

Ваше форматирование раздела категорий неверно, это должен быть массив чисел.

 {
    "name": "xbox",
    "type": "physical",
    "description": "this is a test item",
    "price": "499.99",
    "categories": [ 18 ],
    "availability": "available",
    "weight": "0.5"
}
 

Возможно, в документах есть опечатка.