【发布时间】:2020-03-18 18:57:09
【问题描述】:
有两种方法(至少)可以使用 Magento 2.3 REST API 返回特定产品的产品属性。您可以使用:
GET /V1/products 并传递一个在请求参数中指定 SKU 的搜索过滤器,
或:
使用 URL 中指定的 SKU 获取 /V1/products/{sku}。
第二种方法可能更可取,但如果 SKU 包含斜线(我们的大量产品就是这种情况),则不能使用。通常这两种方法给出相同的结果(如您所愿!),但我目前正在使用一组禁用(即状态 = 2)的产品,并得到明显奇怪的结果(至少它们对我来说似乎很奇怪)。我可以查看我是否在数据库上直接查询有超过 1000 个禁用产品。如果我使用上面的第二种 REST 方法来获取任何这些产品的详细信息,那么一切正常,并且我总是能得到我期望的详细信息。但是如果我尝试使用第一种方法,那么其中只有大约 150 个返回了预期的数据 - 其余的只是返回一个空的项目列表,就好像找不到产品一样。
谁能解释一下上述两种方法在什么情况下表现不同?
【问题讨论】: