#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"
}
Возможно, в документах есть опечатка.