|
Кто-нибудь делал обмен с webasyst? Запросы получения данных проходят, а update неработают. | ☑ | ||
---|---|---|---|---|
0
RetardedToBoot
30.12.20
✎
00:28
|
Понадобилось тут сделать выгрузку на сайт остатков. Сайт на webasyst.
Делаю через REST (до этого я не знал что это такое, да и сейчас не очень). Когда делаю запрос api.php/shop.product.getInfo?id=123456&access_token=XXX он корректно возвращает сведенья о товаре. Когда же пытаюсь сделать запрос на изменение api.php/shop.product.update?id=123456&access_token=XXX то на сайте ничего не меняется, хотя возвращает состояние 200 (successful). Дополнительный параметр count=10 пытался и в запрос прилепить и в тело запроса через json - ничего не помогает. |
|||
1
RetardedToBoot
30.12.20
✎
00:40
|
Причем в документации
https://developers.webasyst.ru/api/explorer/shop/shop.product.update/ про параметр id написано что он GET, а параметр count он POST - как такое может быть в одном запросе? |
|||
2
palsergeich
30.12.20
✎
01:03
|
(1) Это не один запрос.
Даны параметры и к какомц виду операции он относится. |
|||
3
palsergeich
30.12.20
✎
01:04
|
Для обновления - тебе нужен POST
|
|||
4
RetardedToBoot
30.12.20
✎
01:12
|
А как выполнить два запроса? Мне кажется только использования одного подключения здесь не достаточно. Через какой механизм, как мне его обозвать что бы гугл мне его нашел?
|
|||
5
palsergeich
30.12.20
✎
01:13
|
(4) Сам то запрос как выглядит?
|
|||
6
RetardedToBoot
30.12.20
✎
01:15
|
Как вариант пробовал так и через POST и через GET:
/api.php/shop.product.update?id=123456&access_token=XXX&count=10 плюс там еще в начале доменное имя. access_token это идентификатор доступа, что-то вроде аутентификации. Подобный вариант на запрос инфы с сайта проходит. |
|||
7
RetardedToBoot
30.12.20
✎
01:17
|
id=123456 - это идентификатор товара, который запрашиваю или меняю.
|
|||
8
palsergeich
30.12.20
✎
01:22
|
Голоса в моей голове говорят.
Нужен пост запрос То что помечено как гет - в адресную строку. То что ПОСТ - Json с новыми значениями в теле запроса. Ну так по крайней мере другие апи работают |
|||
9
RetardedToBoot
30.12.20
✎
01:28
|
Вопрос решился. Оказалось сайт хотел пост-параметры простым текстом, а я ему давал через json - с инета передрал такой вариант. Вместо application/json сделал application/x-www-form-urlencoded, и заработало.
|
|||
10
palsergeich
30.12.20
✎
01:32
|
(9) Странное апи
|
|||
11
RetardedToBoot
30.12.20
✎
01:33
|
>Странное апи
Полностью согласен. т.е.: Заголовки.Вставить("Content-Type", "application/x-www-form-urlencoded"); ма = новый Массив; для каждого пар из ОтправляемыеДанные цикл ма.Добавить(""+пар.ключ+"="+пар.Значение); КонецЦикла; СтрокаДляТела = СтрСоединить(ма, "&"); ЗапросHTTP.УстановитьТелоИзСтроки(СтрокаДляТела); |
|||
12
RetardedToBoot
30.12.20
✎
02:40
|
небольшое уточнение для будущих копи-паставщиков:
ма = новый Массив; для каждого пар из ОтправляемыеДанные цикл ма.Добавить(""+пар.ключ+"="+КодироватьСтроку(пар.Значение, СпособКодированияСтроки.КодировкаURL)); КонецЦикла; СтрокаДляТела = СтрСоединить(ма, "&"); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |