Storefront API 的 errors 和 userErrors 怎么区分处理
现象#
加购失败时前端没有任何提示,只在控制台看到返回里有 errors 或 userErrors。
原因#
- 只判断了 HTTP 状态码,GraphQL 错误在响应体里
- 把
userErrors当成成功(数组为空才是成功) - 错误信息直接抛给用户,暴露技术细节
处理步骤#
- 先看顶层
errors(查询语法、权限、限流),再看 mutation 的userErrors - 封装统一处理:
userErrors.length > 0时取message映射为友好文案 - 对 430/THROTTLED 做退避重试,其余错误提示用户
- 把原始错误上报日志,前端只展示可理解的信息
验收标准#
失败场景都有明确用户提示,控制台可查到原始错误,重试策略生效。
本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。