如何从 Prestashop API 检索更多数据到我的颤振应用程序?

Posted

技术标签:

【中文标题】如何从 Prestashop API 检索更多数据到我的颤振应用程序?【英文标题】:How can I retrieve more data from Prestashop API to my flutter app? 【发布时间】:2020-12-20 07:46:51 【问题描述】:

我正在寻找有关 Prestashop API 的文档但没有成功。 我正在开发一个带有 Flutter 的移动应用程序,它从 Prestashop API 检索数据,问题是我只能对 api 进行几次调用:列出产品、列出客户、显示杂项信息等......

我希望能够创建新订单、将产品添加到购物车、创建购物车等...但我找不到任何其他解决方案。

我应该创建自己的自定义 api 服务吗?

编辑: 这是已有的数据

http://example.com/prestashop/api/products
http://example.com/prestashop/api/images
http://example.com/prestashop/api/customers

我想获得并创建下一个(即):

http://example.com/prestashop/api/cart/create
http://example.com/prestashop/api/cart/add_product/?id=number
http://example.com/prestashop/api/product/create

非常感谢

【问题讨论】:

【参考方案1】:

您需要的文档行在这里:

https://devdocs.prestashop.com/1.7/webservice/getting-started/#create-a-resource

如何通过 Prestashop API 创建新订单?

这个过程称为创建资源。因此,如果您想创建一个新的订单,只需:

    采用您在 http://example.com/prestashop/api/orders?schema=blank 中看到的所有相同 XML(或 JSON)架构(为 JSON 添加“&output_format=JSON”), 用你的值填充它(没有“id”)并用 POST HTTP 请求发送回http://example.com/prestashop/api/orders/

如何通过 Prestashop API 编辑订单?

这个过程被称为更新资源。因此,如果您想编辑 订单 ID 1,只需:

    采用您在 http://example.com/prestashop/api/orders/1 中看到的所有相同 XML(或 JSON)架构(为 JSON 添加“&output_format=JSON”), 用您的值填充它并使用 PUT HTTP 请求发送回http://example.com/prestashop/api/orders/1

您在Prestashop back office > Advanced parameters > Webservice 中看到的所有实体都采用相同的流程。

注意:请检查是否启用了 API,并且所有复选框都选中了您需要的实体权限。你可以在Prestashop back office > Advanced parameters > Webservice找到它。

【讨论】:

创建订单前需要先创建客户吗?或者我可以与“匿名”客户创建订单。谢谢 @Jotadrive 是的,您需要在创建订单之前创建一个客户。订单需要“id_customer”。但是新的 Prestashop 1.7 安装通常已经创建了两个虚拟客户('id_customer' 1 和 2),您可以使用它们。 好的 @Indré 我想创建匿名订单或“访客”订单,只针对不想创建帐户的人。 @Jotadrive 您需要从完全不同的角度审视您的任务;)只需“启用客人结帐”即可。更多内容在这里:doc.prestashop.com/display/PS17/Orders+preferences @Indré 我知道那个帖子,但之前你说我需要在创建订单之前创建一个客户,因为它是必需的。不是吗?

以上是关于如何从 Prestashop API 检索更多数据到我的颤振应用程序?的主要内容,如果未能解决你的问题,请参考以下文章

从 REST API GitHub 检索大量数据

如何通过Prestashop API使用python请求更新字段?在Prestashop 1.7

如何在 Prestashop 中生成 pdf?

如何从 reactjs 和 API 中检索数据

如何在Prestashop中展示畅销产品?

Laravel 5.7 - 如何使用 axios.get 从 API 检索数据?