Shopware 6 Admin API 的文档。啥是可能的命令?

Posted

技术标签:

【中文标题】Shopware 6 Admin API 的文档。啥是可能的命令?【英文标题】:Documentation for Shopware 6 Admin API. What are possible commands?Shopware 6 Admin API 的文档。什么是可能的命令? 【发布时间】:2021-07-19 05:50:43 【问题描述】:

我的任务是将我们旧商店的系统集成到 Shopware 6。所以我必须处理 Admin API。文档说:

Admin API 的设计方式使得 系统可以以相同的方式读取。实体注册后 系统,可以通过API读写

https://developer.shopware.com/docs/guides/integrations-api/admin-api/reading-entities

这些实体如何运作?是否有所有默认实体的列表/文档?我必须自己注册实体吗?

【问题讨论】:

【参考方案1】:

Shopware 6 API 文档来源

有一个公开的 Shopware 6 API 文档(管理 API 和商店 API),位于

对于 Shopware >= 6.4:https://shopware.stoplight.io/ 所有版本:https://swagger.docs.fos.gg/

本地文档

否则,您可以使用 Valerii 指出的/api/vversion/_info/swagger.html

请注意,从 Shopware 6.4 开始,API 版本不再在请求中使用。所以as per documentation你必须打开类似的东西

https://your-shop-url.invalid/api/_info/swagger.html

确保你已经设置

APP_ENV=dev

在您的 .env 中并仅在本地使用,而不是在可公开访问的服务器上使用。

使用本地文档的好处是,您还将看到由其他扩展引入的端点。

逆向工程而不是文档

此外,在 Shopware 管理面板中执行预期操作时,您始终可以检查浏览器的网络选项卡,并了解必要的请求。

【讨论】:

【参考方案2】:

您无需注册 Shopware 核心提供的“默认”实体。但是,如果您定义自己的自定义实体,则必须将其注册为服务。您可以使用生成 swagger UI 文档的 /api/vversion/_info/swagger.html 端点获取在核心中注册的实体列表。

【讨论】:

不幸的是,swagger 失败了,因为它无法加载cdn.shopware.store/assets/v/21a15245/bundles/framework/… 和cdn.shopware.store/assets/v/21a15245/bundles/framework/… - - - NoSuchKey 指定的键不存在。 assets/v/21a15245/bundles/framework/swagger-ui-bundle.js DZM0EYMJTTVSWBKS bF0T183/yD2bKSNOC4Z+bRbkwAIhLUCjB38Ips255en7RJNKKIGOEE3h5jYEy3ALq4gyjPV1QOI= HostId> 奇怪,这是Shopware云店吗?您可能想寻求他们的支持。

以上是关于Shopware 6 Admin API 的文档。啥是可能的命令?的主要内容,如果未能解决你的问题,请参考以下文章

Shopware 6:在自己的自定义管理模块中获取 PHP 数据

Shopware 6 计划任务未运行

如何扩展 Shopware 6 控制器操作

以编程方式将媒体上传到 Shopware 6 的最佳方式?

shopware 6插件的单元测试未找到自定义服务

在 Shopware 6 中覆盖现有的插件 JS