Shopify REST API如何排除指定ID的产品进行查询?
解决Shopify Products API排除指定ID产品的方法
Shopify的admin/api/2022-04/products.json REST API支持通过参数直接排除指定ID的产品,无需先全量获取再过滤,具体方案如下:
直接使用id_not_in过滤参数
在请求URL中添加id_not_in参数,把需要排除的产品ID用英文逗号分隔传入,API会自动跳过这些ID对应的产品,只返回其余数据。
示例请求:
GET /admin/api/2022-04/products.json?id_not_in=75825896,48589658,4785996
注意事项:
- ID之间仅用英文逗号分隔,不要添加空格
- 2022-04版本的Shopify API完全支持该参数,兼容性无问题
- 若需排除的ID数量过多,注意控制URL长度(一般服务器和浏览器默认限制在2000字符以内,几十个ID完全满足)
备选方案:客户端过滤
如果因特殊场景无法使用id_not_in参数,可以先调用API获取全量产品数据,再在你的自定义APP中对返回列表做过滤,剔除目标ID对应的产品。
以JavaScript为例的简单过滤逻辑:
// 假设从API获取的产品列表为products数组 const excludedIds = [75825896, 48589658, 4785996]; const filteredProducts = products.filter(product => !excludedIds.includes(product.id));
该方案适合产品数量较少的场景,避免不必要的数据传输开销。
内容的提问来源于stack exchange,提问作者Vinod Kumar
相关产品推荐
相关产品推荐

