GraphQL查询BigCommerce指定产品变体SKU及元字段语法咨询
解决BigCommerce GraphQL获取产品变体及元字段的问题
嘿,作为刚接触BigCommerce GraphQL的新手,我完全懂你想要拿到完整变体信息的需求!让我帮你调整查询语法,顺便解决元字段返回空的问题。
1. 获取主产品SKU + 所有变体SKU的正确查询
你之前的查询只获取了主产品的SKU,要拿到所有变体的SKU,需要在product下嵌套variants字段,通过edges和node来访问变体数据。完整查询如下:
query { site { product(entityId: 781) { sku # 主产品的SKU variants { edges { node { sku # 每个变体的SKU } } } } } }
2. 修正变体元字段的查询(解决返回空的问题)
你之前写的元字段查询片段本身语法没问题,但你需要把它放到variants的node内部,因为你要获取的是变体的元字段,而不是主产品的。另外如果返回空,大概率是这几个原因:
- 命名空间
"App Namespace"拼写不完全匹配(比如大小写、空格或特殊字符要和实际设置的完全一致) - 该变体本身没有设置这个命名空间下的元字段
- 你的API令牌没有读取元字段的权限
修正后的完整查询(包含变体SKU+元字段):
query { site { product(entityId: 781) { sku variants { edges { node { sku metafields(namespace: "App Namespace") { edges { node { id key value } } } } } } } } }
如果还是返回空,建议先在BigCommerce后台检查对应变体的元字段设置,确认命名空间和键值对都存在,同时验证API令牌的权限是否包含store_variants_read和store_metafields_read。
内容的提问来源于stack exchange,提问作者user1379695
相关产品推荐
相关产品推荐

