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

创建Shopify文章部分请求返回422错误,请求技术排查

排查Shopify创建文章时部分请求返回422 Unprocessable Entity的问题

第一步:获取Shopify返回的具体错误信息

422错误的核心原因藏在响应体里,你当前代码没有读取响应内容,先添加代码打印详细错误:

defer resp3.Body.Close()
respBody, err := io.ReadAll(resp3.Body)
if err != nil {
    fmt.Println("读取响应体失败:", err)
    return
}
fmt.Println("Shopify错误响应:", string(respBody))

Shopify会明确指出哪个字段不符合要求(比如标题过长、图片URL不可访问等),这是定位问题最快的方式。

常见可能的问题及排查方向

1. 字段长度超出限制

Shopify对Article核心字段有明确长度限制:

  • Title:最大255字符,超过会触发422
  • Tags:多个标签用逗号分隔,总长度不能过长,且标签不能包含特殊字符
  • BodyHTML:确保HTML格式合法,无未闭合标签,过大的内容也可能触发校验失败

2. 图片字段异常

  • 检查Image.Src是否为公开可访问的URL:Shopify需要能直接拉取到图片,如果URL返回404、需要授权或无法访问,会导致校验失败
  • 检查Image.Alt长度:Alt文本不能超过255字符

3. 时间格式不符合要求

你当前生成的PublishedAt格式是2006-01-02T15:04:05-0700,但UTC时间的偏移量应该是-0000或用Z后缀,Shopify更认可标准ISO 8601格式,建议修改为:

PublishedAt: time.Now().UTC().Format(time.RFC3339),

生成的格式类似2024-05-20T12:34:56Z,符合Shopify API的时间格式要求。

4. Metafield类型不匹配

确保Metafields[0].Value是合法的整数,没有超出Shopify允许的数值范围(比如过大的整数),同时Type字段"number_integer"要和Value的int类型严格对应。

5. 特殊字符或非法内容

检查Title、BodyHTML中是否包含未转义的特殊字符(比如未闭合的引号、HTML语法错误),这些会导致JSON解析异常或Shopify校验不通过。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 05:15:20