【问题标题】:Using Magento 2.3 REST endpoints to get product attributes使用 Magento 2.3 REST 端点获取产品属性
【发布时间】: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 个返回了预期的数据 - 其余的只是返回一个空的项目列表,就好像找不到产品一样。

谁能解释一下上述两种方法在什么情况下表现不同?

【问题讨论】:

    标签: rest get magento2


    【解决方案1】:

    好的,我想我已经确定了问题出在哪里,尽管我需要做更多的研究来确切地找出我需要做的事情。对于 REST 调用,我在 URL 中指定了“范围”,在原始数据库查询中,我在查询中指定了“store_id”,我认为我是在比较 like 和 like。但是查看定义产品的商店 id,我发现了一种明确的模式来区分对第一个 REST 方法可见的产品和不可见的产品。关于如何定义和使用范围,我显然还需要了解更多内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多