ruby-on-rails - Rails Spree API 与多存储
问题描述
据我所知,我可以在 Spree 中使用三种类型的 api。我只以产品为例。
- http://127.0.0.1:3000/api/products
- http://127.0.0.1:3000/api/v1/products
- http://127.0.0.1:3000/api/v2/products
我没有看到上述 3 个 api 之间的响应有任何差异。这太令人困惑了。
另一个困惑是当涉及到多商店 Spree 站点时,还有另一个版本的 api 4。http://127.0.0.1:3000/api/v2/storefront/products 它返回仅在当前店面注册的产品。
假设我想检索属于其他商店的产品?有人建议使用 store_id=<store_id> 参数,但它根本不起作用。
以及如何从1-3 api结果中获取产品所属的商店。有人可以帮忙吗?
我使用这些大礼包版本,我认为这些版本与问题没有太大关系。gem 'spree','3.7.2' gem 'spree_gateway','3.7.4' gem 'spree_core','3.7.2' gem 'spree_api','3.7.2'
解决方案
Spree 4.2 Multi-Store 支持开箱即用。每个商店都有您在管理面板 UI 中设置的自己的 URL,例如。
- 商店 A:canada.example.com
- 商店 B:europe.example.com
因此,如果您想从商店 A 查询产品,您需要使用:
https://canada.example.com/api/v2/storefront/products
更多关于这个:
推荐阅读
- ios - 从 UIView 的子视图中的所有 UILabel 中排除 UIButton 的标签
- scala - 无法使用 SSO 钱包将 Oracle 与 Apache Spark 连接
- javascript - tfjs nodejs:util_1.promisify 不是函数
- html - 如何在 mvc 应用程序中显示文件夹中的任何一个图像或第一张图像
- html - CSS flex 和 space-between 动态
- c# - 如何增加控制台应用程序c#中数字的百分比?
- java - 使用哈希函数时如何检查记录是否已经存在?
- r - 将 RPostgres 或 RPostgreSQL dbGetQuery() 参数传递给 IN 运算符
- vue.js - Vue js:访问 dist 文件夹中组件的 prod.env.js 或数据变量
- ansible - URI 主体内的条件 Ansible