如何将prestashop与android集成?

use*_*104 8 php api android prestashop prestashop-1.6

最近我使用prestashop创建了一个eshop网站

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

因为我要为它构建Android应用程序.应用程序中包含的内容只是一些基本功能

例如,创建客户帐户/列表产品/订单产品/支付/查看订单等.常见的eshop功能...

问题是似乎周围的资源很少.是否有任何库/官方的/或者我需要从stratch开始创建API?

阅读 http://doc.prestashop.com/display/PS16/Developer+Guide一段时间,但不知道到目前为止我需要从什么开始.

这是一个相当抽象的问题,但由于社区不是那么受欢迎且资源有限,我希望这可以从对方的经验中学习,并帮助其他人提出相同的要求.

非常感谢您的帮助

MH.*_*MH. 8

问题是似乎周围的资源很少.是否有任何库/官方的/或者我需要从stratch开始创建API?

与您的问题的评论之一相反,Prestashop 确实提供了REST服务.在文档中它被"Web服务"引用.

快速链接:

有一些开源API实现可用,但没有专门用于Android/Java.您可能会发现它们可用作指南.

需要注意以下几点:

默认情况下,Web服务功能似乎已禁用.因此,为了使用它,您必须首先在后台启用它.从文档中复制:

启用Web服务功能

进入PrestaShop后台,打开"高级参数"菜单下的"Web服务"页面,然后为"启用PrestaShop的Web服务"选择"是".保存你的改变:你已经完成了!

与Web服务通信需要API密钥.您必须再次使用后台为您的Android应用生成一个:

创建访问密钥

打开"高级参数"菜单下的"Web服务"页面,然后单击"添加新"按钮以访问帐户配置部分.出现一个长形式:

  • 关键.API密钥用作您正在创建的Web服务帐户的主要标识符.单击"生成"按钮以获取唯一的身份验证密钥.您也可以创建自己的(必须长度为32个字符),但使用生成的密钥可以防止错误的操作员过于轻易地猜测您的密钥.使用此密钥,您和其他所选用户将能够访问Web服务.
  • 关键描述.帮助您记住您创建该密钥的人,分配给它的访问权限等.描述不公开,但请确保将所有关键字都放在用户身上,以便您可以更快地找到他们的密钥.

  • 现状.您可以随时禁用任何密钥.

  • 权限.此部分非常重要,因为它使您可以为要为此密钥提供的每个资源分配权限.实际上,您可能希望用户对某些资源具有读写访问权限,但仅对其他资源具有读取访问权限 - 并且无法访问更重要的资源.在权限列表中,左侧最复选框使您可以定义给定资源的所有权限.同样,每列顶部的复选框使您可以为所有资源选择权限(查看,修改等).确保仅选择使用该密钥所需的权限.不要将所有资源的所有权利都授予任何密钥,只保留给您和您的密钥.商店协会.这仅出现在多线模式下.它使您可以选择密钥所有者应该访问哪些商店.

如果您选择使用自定义密钥而不是生成密钥,请确保它非常安全并且其权限有限 - 并且它的长度为32个字符!

最后,要了解API方法的概述:

从浏览器访问Web服务

商店Web服务的端点位于/api/Prestashop安装根目录的文件夹中:

要访问它,您需要在请求时提供API密钥.没有密码,提供您的API密钥就足够了 - 因此密钥应该由用户保密!您可以直接键入API端点地址,然后输入API密钥,或在地址中指明您的API密钥.这是一个示例,UCCLLQ9N2ARSHWCXLT74KUKSSK34BFKX 作为API密钥.

您可以使用任何支持XML的浏览器对此进行测试.如果没有为密钥设置权限,则浏览器将一直要求您无限期地输入密钥.

结果应该看起来像这样(对于PrestaShop的1.5.4.1版本):

<?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>
Run Code Online (Sandbox Code Playgroud)

既然你提到你主要对支持Android应用程序的基本/核心功能感兴趣,我倾向于说这可能符合你的需求.:)