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

使用curl注册Kafka Schema Registry schema时报错如何处理?

报错触发原因
  • Shell 引号转义规则不匹配:你当前使用的双引号重复("")是Windows CMD环境下的转义规则,在Linux/macOS的Bash/Zsh等Shell中不生效,Shell会将请求体拆分为多个独立参数,导致curl误把schema等字段内容当成新的请求地址解析,触发Could not resolve host: schema报错。
  • JSON结构不完整:你提交的请求体存在多处语法缺失:AVRO Schema未闭合fields数组、未闭合整个Record对象,schema字符串值缺少结束引号,最外层的请求体对象也缺少闭合大括号,服务端接收后无法解析JSON格式,触发字符格式错误。
  • curl通配符解析冲突:curl默认开启glob通配符解析,未正确转义的嵌套大括号会被识别为通配符表达式,触发[globbing] nested brace报错。
修复方案

调整后的完整可执行命令如下:

curl -i -XPOST -u "accesskey:secretkey" \
-H "Content-Type: application/vnd.schemaregistry.v1+json" \
-g \
https://schema-registry.nonprod.us-west-2.aws.proton.x.com/subjects/tracking-info-publish-avro-value/versions \
--data '{ "schema": "{\"type\":\"record\",\"name\":\"ShipmentNotification\",\"namespace\":\"com.x.ordertrackinginfo.eventschema\",\"fields\":[{\"name\":\"sellingStoreNumber\",\"type\":\"int\"}]}" }'

本次调整的核心改动点:

  • 把请求体内部的双引号统一使用反斜杠\转义,符合Shell转义规则
  • 补全所有缺失的JSON闭合符号:新增]闭合fields数组,补全AVRO Schema的闭合大括号,补全schema字符串的结束引号,补全最外层请求体的闭合大括号
  • 新增-g参数关闭curl的glob通配符解析,避免大括号被误识别为通配符

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 17:06:01