Unipro

документація

Користувальницькькі налаштування

Налаштування сайту


обмен_данными_с_другими_системами:обмен_данными_с_интернет_магазином

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Порівняння попередніх версійПопередня ревізія
Наступна ревізія
Попередня ревізія
обмен_данными_с_другими_системами:обмен_данными_с_интернет_магазином [2019/02/05 16:55] – [Настройка] iserbinобмен_данными_с_другими_системами:обмен_данными_с_интернет_магазином [2020/03/23 20:48] (поточний) – [Формат обмена данными] iserbin
Рядок 2: Рядок 2:
 ===== Как это работает ===== ===== Как это работает =====
 Инициатором обмена данными выступает UniproRetail. \\ Инициатором обмена данными выступает UniproRetail. \\
-По команде пользователя, или автоматически через заданное время, UniproRetail подключается к вашему сайту и передает информацию о товарах (Наименование, Цену, Количество на складе и т.д.)\\ +По команде пользователя, или автоматически через заданное время, UniproRetail подключается к Вашему сайту и передает информацию о товарах (Наименование, Цену, Количество на складе и т.д.)\\ 
-Нужно, чтоб web-программист реализовал скрипт на сайте, который будет получать информацию в формате JSONи создавать/обновлять информацию о товарах на сайте.+Необходимо, чтобы web-программист реализовал скрипт на сайте, который будет получать информацию в формате JSON  и создавать/обновлять информацию о товарах на сайте.
  
 ===== Настройка ===== ===== Настройка =====
Рядок 9: Рядок 9:
 {{ :обмен_данными_с_другими_системами:setup-js-inet-m.png?nolink |}} {{ :обмен_данными_с_другими_системами:setup-js-inet-m.png?nolink |}}
   * **Имя задания для выгрузки** - для различия настроек, если несколько интернет-магазинов.   * **Имя задания для выгрузки** - для различия настроек, если несколько интернет-магазинов.
-  * **Идентификатор текущей базы данных** - по этому идентификатору интернет-магазин может определить или запрос поступил со "своей" базы. +  * **Идентификатор текущей базы данных** - по этому идентификатору интернет-магазин может определить,  поступил ли запрос  со "своей" базы. 
-  * **URL скрипта сервера...** - адрес страницы сайта, через которую UniproRetail будет загружать данные. В адресе указывайте тип соединения HTTP или HTTPS. В адресной строке можно передавать дополнительные параметры, например: \\ ''http://test-json.unipro.ua/upload.php?pass=12345&baseID=1003'' +  * **URL скрипта сервера...** - адрес страницы сайта, через который UniproRetail будет загружать данные. В адресе указывайте тип соединения HTTP или HTTPS. В адресной строке можно передавать дополнительные параметры, например: \\ ''http://test-json.unipro.ua/upload.php?pass=12345&baseID=1003'' 
-  * **Группы товаров для выгрузки** - если выгружать нужно не все товары. +  * **Группы товаров для выгрузки** - если выгружать необходимо не все товары. 
-  * **Выгружать товары по которых были движения** - если выгружать нужно не все товары, а только те по которых за последние N-дней были движения по складу. +  * **Выгружать товарыпо которым были движения** - если выгружать необходимо не все товары, а только тепо которым за последние N-дней были движения по складу. 
-  * **Организации** - если несколько организаций, то выбор по каким показывать остатки. +  * **Организации** - если несколько организаций, то выбирать, по каким показывать остатки. 
-  * **Склады** - если несколько складов, то выбор по каким показывать остатки.+  * **Склады** - если несколько складов, то выбирать, по каким показывать остатки.
   * **Автоматическая отправка** - выставляется период времени в минутах, минимальное значение 5 минут.   * **Автоматическая отправка** - выставляется период времени в минутах, минимальное значение 5 минут.
  
Рядок 24: Рядок 24:
 Описание формата обмена данными JSON: [[обмен_данными_с_другими_системами:формат_обмена_json|Формат обмена данными JSON]] Описание формата обмена данными JSON: [[обмен_данными_с_другими_системами:формат_обмена_json|Формат обмена данными JSON]]
  
 +Программа отправляет POST-запрос с MIME-type: application/json. Получить файл на стороне сервера можно так:
 +   $jsonFile = file_get_contents("php://input");
 +==== Ответ сервера ====
 +Если все ОК, то сервер должен ответить программе в JSON-формате: \\
 +<code>{"status":{"code":200,"errortext":"OK"}}</code>
 +
 +
 +Если были ошибки в обработке JSON-файла от программы, то сервер пишет любую ошибку отличную от 200 в параметре "status.code", а в параметре "status.errortext" - текстовое описание ошибки, например: \\
 +<code>{"status":{"code":1,"errortext":"JSON file size is too large!"}}</code>
 +
 +
 +Пример PHP скрипта ответа сервера:
 +<code>
 +if ($lenJS > (30*(1024*1024)) /* 30 MB*/ )
 +{
 + echo '{"status":{"code":1,"errortext":"JSON file size is too large!"}}';
 +}
 +else
 +{
 + echo '{"status":{"code":200,"errortext":"OK"}}';
 +}
 +</code>
обмен_данными_с_другими_системами/обмен_данными_с_интернет_магазином.1549378531.txt.gz · Востаннє змінено: 2019/02/05 16:55 повз iserbin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki