View Single Post
  #19  
Old 01-25-2013, 02:54 PM
Scarabey2001's Avatar
Scarabey2001 Scarabey2001 is offline
Member
 
Join Date: May 2012
Posts: 46
Default

[QUOTE=Eugene Rimmer;42040]Программный импорт продуктов в Эквид (включая и обновляющий импорт, когда новые продукты не создаются, а обновляются поля существующих) сделать всё-таки можно - для этого нужно эмулировать работу формы импорта продуктов из панели управления Эквида, отправляя данные POST-запросом на тот же адрес и в том же формате, что и форма (адрес различается для каждого владельца магазина). Однако здесь есть несколько важных НО:

1. Во-первых это недокументированная возможность Эквида, поведение может измениться со временем и мы не можем гарантировать обратную совместимость. Когда мы реализуем документированный API, позволяющий менять товары внешними запросами, мы будем поддерживать и обратную совместимость этого API.

2. Формат запроса должен в точности соответствовать тому, что отправляет браузер при попытке импорта через панель управления (включая настройки колонок). Ошибка в самом формате запроса заставит сервер вернуть ошибку, если же вы передадите настройки импорта, не соотствествующие содержимому файла, импорт в лучшем случае не пройдет, в худшем испортит поля товаров в этом магазине (например, никто не обрадуется, что вместо описаний у товаров стоит цена).

3. Для авторизации система импорта ожидает в этом запросе также куку с названием 'token' и содержимым вида 'логин:пароль' (используется HTTPS соединение, так что подслушать их не могут). Неавторизованный запрос (без куки или с неправильной кукой) не будет удовлетворен.

4. Даже когда все условия запроса удовлетворены, запрос никак не сигнализирует о состоянии импорта - присланный файл ставится в очередь и импортируется по мере возможности. Ваше приложение не сможет знать, что импорт окончен.

Если вышеописанные сложности не пугают, импорт продуктов вполне возможен. В любом случае, с введением API позволяющего изменять продукты, все эти сложности отпадут.[/QUOTE]

Можно ли поподробней об этой недокументированной возможности корректировки остатков по API? Ждать релиза 13.1 нет времени. Всё, что нужно, это менять доступные остатки.
И да, работает ли сейчас этот API? [url]http://kb.ecwid.com/w/page/25285101/Product%20API#RESTAPIMethodupdateaproductsinceEcwidversion131[/url]

Спасибо за оперативный ответ!