Проблема в том, что вокруг немного ресурсов. Есть ли какая-либо библиотека уже там/офффициальная/или мне нужно начать создавать API из stratch?
В отличие от одного из комментариев на ваш вопрос, Prestashop делает на самом деле предлагают услугу REST. В документации упоминается «веб-сервис».
Быстрые ссылки:
Есть несколько open source API implementations доступны, но никто специально для Android/Java. Однако вы можете найти их полезными в качестве ориентира.
Несколько вещей, чтобы принять к сведению: появляется функция
Веб-сервис должен быть отключен по умолчанию. Поэтому, чтобы использовать его, вы должны сначала включить его в бэк-офис.Скопировано из документации:
Включение WebService функции
Перейти в PrestaShop бэк-офиса, откройте страницу «WebService» в меню «Дополнительные параметры», а затем выберите «Да» для «Разрешить веб-сервис PrestaShop». Сохраните изменения: все готово!
Для связи с веб-службой требуется ключ API. Вы должны будете генерировать для вашего Android приложение, снова используя бэк-офис:
Создание ключа доступа
Откройте страницу «Webservice» в меню «Advanced Параметры», а затем нажмите кнопку «Добавить новую», чтобы открыть раздел конфигурации учетной записи . Долговременная форма:
- Ключ. Ключ API служит основным идентификатором для учетной записи webservice, которую вы создаете. . Нажмите кнопку «Создать», чтобы получить уникальную аутентификацию . Вы также можете создать свой собственный (длина которого должна быть 32 символа), , но с помощью сгенерированного ключа можно легко ошибочно догадываться над вашим ключом . Используя этот ключ, вы и другие выбранные пользователи смогут получить для доступа к веб-сервису.
Ключевое слово. Помогает вам вспомнить, кто вы создал этот ключ, какие права доступа ему присвоены и т. Д. Описание не является общедоступным, но не забудьте поместить все ключевые слова , относящиеся к пользователю, чтобы вы могли найти их ключ быстрее.
Статус. Вы можете отключить любой ключ в любое время.
- Разрешения. Этот раздел очень важен, поскольку он позволяет назначать права для каждого ресурса , который вы хотите сделать доступным для этого ключа. В самом деле, вы можете хотите, чтобы пользователь имел доступ на чтение и запись на некоторых ресурсах, но только читать доступ на других - и не иметь доступа к более важным. В список разрешений, флажок в левой части окна позволяет вам определить все права на данный ресурс. Аналогично, флажок в в верхней части каждого столбца позволяет вам выбрать право выбора (View, Modify и т. Д.) Для всех ресурсов. Обязательно выберите только права, необходимые для использования этого ключа. Не предоставляйте все права для всех ресурсов на любой ключ, сохраняйте это только на свой и свой. Магазин ассоциации. Это появляется только в многоэтажном режиме. Он позволяет вам выбрать, к какому из ваших магазинов должен иметь доступ владелец ключа.
Если вы решили использовать пользовательский код доступа, а не сгенерированный один, сделать , что это очень безопасно, и что его права ограничены, - и что это долго 32characters!
Наконец, чтобы получить обзор методов API:
Доступ к веб-сервиса из браузера
Конечной к WebService вашего магазина находится в папке /api/
на корень вашего установка Prestashop:
Чтобы получить к нему доступ, вам необходимо указать ключ API при запросе. Нет пароля, , обеспечивающий ваш ключ API достаточно - и поэтому ключ должен быть хранится в секрете пользователем! Вы можете либо ввести адрес конечной точки API непосредственно, либо ввести свой ключ API, либо указать свой ключ API в адресе . Вот пример: UCCLLQ9N2ARSHWCXLT74KUKSSK34BFKX
является ключом API.
Вы можете проверить это с помощью любого браузера, поддерживающего XML. Если для ключа не установлено разрешение , браузер будет продолжать просить вас ввести ключ на неопределенный срок.
Результат должен выглядеть примерно так (для версии 1.5.4.1 от PrestaShop):
<?xml version="1.0" encoding="UTF-8"?>
<prestashop xmlns:xlink="http://www.w3.org/1999/xlink">
<api shop_name="MYSHOP">
<addresses>...</addresses>
<carriers>...</carriers>
<cart_rules>...</cart_rules>
<carts>...</carts>
<categories>...</categories>
<combinations>...</combinations>
<configurations>...</configurations>
<contacts>...</contacts>
<content_management_system>...</content_management_system>
<countries>...</countries>
<currencies>...</currencies>
<customer_messages>...</customer_messages>
<customer_threads>...</customer_threads>
<customers>...</customers>
<deliveries>...</deliveries>
<employees>...</employees>
<groups>...</groups>
<guests>...</guests>
<image_types>...</image_types>
<images>...</images>
<languages>...</languages>
<manufacturers>...</manufacturers>
<order_carriers>...</order_carriers>
<order_details>...</order_details>
<order_discounts>...</order_discounts>
<order_histories>...</order_histories>
<order_invoices>...</order_invoices>
<order_payments>...</order_payments>
<order_states>...</order_states>
<orders>...</orders>
<price_ranges>...</price_ranges>
<product_feature_values>...</product_feature_values>
<product_features>...</product_features>
<product_option_values>...</product_option_values>
<product_options>...</product_options>
<product_suppliers>...</product_suppliers>
<products>...</products>
<search >...</search>
<shop_groups>...</shop_groups>
<shops>...</shops>
<specific_price_rules>...</specific_price_rules>
<specific_prices>...</specific_prices>
<states>...</states>
<stock_availables>...</stock_availables>
<stock_movement_reasons>...</stock_movement_reasons>
<stock_movements>...</stock_movements>
<stocks>...</stocks>
<stores>...</stores>
<suppliers>...</suppliers>
<supply_order_details>...</supply_order_details>
<supply_order_histories>...</supply_order_histories>
<supply_order_receipt_histories>...</supply_order_receipt_histories>
<supply_order_states>...</supply_order_states>
<supply_orders>...</supply_orders>
<tags>...</tags>
<tax_rule_groups>...</tax_rule_groups>
<tax_rules>...</tax_rules>
<taxes>...</taxes>
<translated_configurations>...</translated_configurations>
<warehouse_product_locations>...</warehouse_product_locations>
<warehouses>...</warehouses>
<weight_ranges>...</weight_ranges>
<zones>...</zones>
</api>
<api shop_name="MYOTHERSHOP">...</api>
<api shop_name="YETANOTHERSHOP">...</api>
</prestashop>
Поскольку вы упоминаете вы в основном заинтересованы в поддержке базового/основные функциональные возможности в Android приложения, я Я склонен сказать, что это, вероятно, соответствует вашим потребностям. :)
Ну, написание API, который означает, что вы ориентируетесь на родное приложение, которое включает в себя здание api, я надеюсь, что preashop предоставит такие параметры. Наименее распространенный способ сделать это, чтобы ваш сайт реагировал и настраивал приложение webview (Phonegap будет делать это для нескольких платформ) –
Я просмотрел документы, и, очевидно, Prestashop не имеет каких-либо API-интерфейса SOAP/REST/XML/JSON которые вам понадобятся для интеграции мобильных приложений. Разработка API для применения этой глубины потребует значительных усилий. Разработчики Prestashop, скорее всего, увеличат интерес к своему продукту, если они предоставят какой-то API для интеграции. Наличие приложения, которое не может быть расширено в платформу, не является вариантом в сегодняшнем мире. –
Привет, В настоящее время нет ави для Prestashop. Вам нужно будет создать его с нуля, чтобы интегрировать приложение в него. Contus mcomm построил Prestashop api, который готов к запуску. У api было несколько обновлений, которые сделали его быстрее и эффективнее, чем раньше. Функция автоматической синхронизации автоматически отражает изменения, внесенные на веб-сайте в конце приложения. –