You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter调用WooCommerce API时stock_status参数不生效问题求助

问题根因

你的传参写法存在两处错误,导致库存过滤失效:

  1. 给stock_status的参数值额外包裹了单引号,WooCommerce API会把'instock'(带引号)作为匹配值,和数据库里存的instock(无引号)无法匹配。
  2. 参数连接符错误使用了HTML转义字符&,该库的getAsync方法不会自动解析HTML实体,会导致后续参数无法被服务端正常识别。

另外你定义的方法接收idCategory入参,但实际请求中没有拼接category筛选参数,也会导致无法获取指定分类下的商品。

修复后的实现代码
Future getProduct(int idCategory) async {
  WooCommerceAPI wooCommerceAPI = WooCommerceAPI(
      url: "x",
      consumerKey: "x",
      consumerSecret: "x");

  var productos = await wooCommerceAPI.getAsync(
    "products?category=$idCategory&stock_status=instock&per_page=100"
  );
  return productos;
}
调试提示
  • 直接拼接HTTP请求参数时,不要给参数值加额外引号,也不要做HTML转义,&仅在HTML页面渲染链接时使用,原生HTTP请求直接用&拼接参数即可。
  • 如果后续参数调整后仍有问题,可以先打印最终发起请求的完整URL,和你PHP端调用正常的URL逐字符对比,能快速定位多余字符、参数错漏问题。

内容的提问来源于stack exchange,提问作者Alberto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 19:54:24