ImageServer
Сервер изображений
В базе платформы ABCP для большинства наименований есть изображения.
Мы регулярно проводим большую работу по актуализации этих данных.
Если вам необходимо использовать свои изображения в дополнение к фотографиям из базы платформы, для этого у нас разработан специальный функционал "Сервер изображений".
Как работает
Если картинка для товара есть на вашем сервере изображений, она будет приоритетнее и будет показана на сайте.
Если картинки на вашем сервере изображений нет, но есть в нашей базе, будет показана наша картинка.
Если картинки нет ни на вашем сервере изображений, ни в нашей базе, будет показана "заглушка".
Какие задачи можно решить
- Использование собственных изображений для товаров вместо наших;
- Использование изображений с собственными водяными знаками;
- Использование изображений для товаров, бывших в употреблении;
- И другие.
Что нужно для создания
Для реализации требуется создание скрипта и развертывания его на вашем сервере по техническому заданию:
Требования к серверу изображений
- Обязательно использование HTTPS. Сертификат должен быть не самоподписанным (браузеры должны принимать его). Корректность сертификата можно проверить в PostMan с включенной проверкой SSL-сертификатов.
- На сервере, где расположен скрипт, должны быть включены кросс-доменные запросы. (Что это и как тут)
Вариант 1: Одно изображение к одной детали
Этот вариант самый простой для реализации, но позволяет вывести только одно изображение для одной детали.
Изображения должны быть доступны по адресу вида:
https://server_name/brand_name/article_number.jpg
Например, для Knecht 00865N1 это будет ссылка:
https://server_name/knecht/00856n1.jpg
Бренд:
- приводится к нижнему регистру
- в названии бренда заменяются "слэши" на "минусы" ( / <=> - ) (актуально для Knecht/Mahle, HYUNDAI/KIA и т.п.)
- в названии бренда не может быть использован символ решетка #
Допустимо использование “слэша” в названии бренда. В этом случае будет происходить 301-й редирект на корректный адрес.
Пример:
http://server_name/knecht/mahle/00856n1.jpg
редирект на:
http://server_name/knecht-mahle/00856n1.jpg
Артикул:
- удаляются символы: ' ', '-', '/', '\\', '.', ',', '"', '\'', PHP_EOL, "\r", "\n", "\t"
- приводится к нижнему регистру
- пробелы
- минусы
- слеши (оба)
- точки
- запятые
- таб
- перенос строки
- конец строки
Вариант 2: Несколько изображений к одной детали на сайте
Для того, чтобы отображать на сайте несколько изображений к одной детали, необходимо реализовать скрипт. Скрипт в ответ на POST-запрос деталью должен возвращать JSON-ответ со списком всех изображений к товару, отправленному в запросе.
При этом запросы к вашему серверу могут отправляться как с Content-type:application/json так и с Content-type: application/x-www-form-urlencoded (такое требование возникает из-за особенностей кросс-доменных обращений, подробнее тут)
ЗАПРОС (POST):
URL: http://server_name//multifinderbrands.php
BODY:
[
{
"brand": "febi",
"article": "01089"
}
]
ОТВЕТ:
[
{
"url": "https:\/\/server_name\/febi\/01089.jpg"
},
{
"url": "https:\/\/server_name\/febi\/01089_1.jpg"
}
]
Дополнительный параметр для миниатюр "isPreview": true
ЗАПРОС (POST):
URL: http://server_name//multifinderbrands.php
BODY:
[
{
"brand": "febi",
"article": "01089",
"isPreview": true
}
]
В ответе желательно возвращать ссылку не на изображение в высоком разрешении, а на его миниатюру.
Как подключить свой сервер изображений
Для проверки выполненных вами настроек и для подключения вашего сервера изображения, необходимо обратиться в техническую поддержку.