2015-02-25 4 views
7

Недавно я создал веб-сайт Интернет-магазин с помощью PrestaShopКак интегрировать prestashop с Android?

https://www.prestashop.com/en/

И так как я собираюсь построить андроид приложение для него. Что касается приложений, то только некоторые основные функции

например. создать учетную запись клиента/перечислить продукт/заказать продукт/оплатить/просмотреть заказ и т. д. обычные функции эспресса ...

Проблема в том, что вокруг немного ресурсов. Есть ли какая-либо библиотека уже там/офффициальная/или мне нужно начать создавать API из stratch?

http://doc.prestashop.com/display/PS16/Developer+Guide какое-то время, но не знаю, что мне нужно для начала.

Это довольно абстрактная проблема, но поскольку сообщество не так популярно, а ресурс ограничен, я надеюсь, что это может извлечь уроки из опыта другого человека и помочь другим людям с тем же запросом.

Большое спасибо за помощь

+1

Ну, написание API, который означает, что вы ориентируетесь на родное приложение, которое включает в себя здание api, я надеюсь, что preashop предоставит такие параметры. Наименее распространенный способ сделать это, чтобы ваш сайт реагировал и настраивал приложение webview (Phonegap будет делать это для нескольких платформ) –

+0

Я просмотрел документы, и, очевидно, Prestashop не имеет каких-либо API-интерфейса SOAP/REST/XML/JSON которые вам понадобятся для интеграции мобильных приложений. Разработка API для применения этой глубины потребует значительных усилий. Разработчики Prestashop, скорее всего, увеличат интерес к своему продукту, если они предоставят какой-то API для интеграции. Наличие приложения, которое не может быть расширено в платформу, не является вариантом в сегодняшнем мире. –

+0

Привет, В настоящее время нет ави для Prestashop. Вам нужно будет создать его с нуля, чтобы интегрировать приложение в него. Contus mcomm построил Prestashop api, который готов к запуску. У api было несколько обновлений, которые сделали его быстрее и эффективнее, чем раньше. Функция автоматической синхронизации автоматически отражает изменения, внесенные на веб-сайте в конце приложения. –

ответ

7

Проблема в том, что вокруг немного ресурсов. Есть ли какая-либо библиотека уже там/офффициальная/или мне нужно начать создавать 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:

  • Если PrestaShop установлен в корне вашего сервера, вы можете получить доступ к API здесь: http://example.com/api/
  • Если PrestaShop установлен в папке вашего сервера, вы можете получить доступ к к API здесь: http://example.com/prestashop/api/

Чтобы получить к нему доступ, вам необходимо указать ключ 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 приложения, я Я склонен сказать, что это, вероятно, соответствует вашим потребностям. :)

+1

Я стою исправлено. –

+0

благодарит за вас большое усилие, это означает, что perstrashop уже имеет сервис по обслуживанию отдыха, все, что мне нужно сделать, это получить эту ссылку API и отправить/получить данные от нее. – user782104

+0

@MH .. можно ли мне вести о том, как сделать вызов службы от android? Я получаю 401, когда я передаю ключ также :( –

2

Если вы не ищете родное приложение, вы можете попробовать реагировать mobile template addon или paid themes. Если вам нужно родное приложение и хотели бы повторно использовать API-интерфейсы из вашего Prestashop магазина, вы должны create an access к Prestashop REST webservices

Чтобы проверить, если вы правильно настроили доступ к вебу-службе, перейдите на страницу http://[email protected]/api/, где " mypasskey "заменяется вашим ключом.

Смежные вопросы