AVRO模式&x27;s JSON看起来有效,但从Kafka架构注册表返回无效
我正在尝试将AVRO架构注册到架构注册表。架构包含一条记录和一些字段。我将模式作为JSON发布到模式注册RESTAPI,尽管JSON看起来很好,但服务器返回AVRO模式&x27;s JSON看起来有效,但从Kafka架构注册表返回无效,json,apache-kafka,schema,avro,Json,Apache Kafka,Schema,Avro,我正在尝试将AVRO架构注册到架构注册表。架构包含一条记录和一些字段。我将模式作为JSON发布到模式注册RESTAPI,尽管JSON看起来很好,但服务器返回curl:{“error_code”:42201,“message:”输入模式是无效的Avro模式“} 谁能看一下吗 Powershell用于将模式生成为JSON $type = @{namespace="customer-actions"; name="customer-enrollment"; type="recor
curl:{“error_code”:42201,“message:”输入模式是无效的Avro模式“}
谁能看一下吗
Powershell用于将模式生成为JSON
$type = @{namespace="customer-actions"; name="customer-enrollment";
type="record";
fields=@{name="id"; type="int"},
@{name="name"; type="string"}}
$typeJ = ConvertTo-Json $type -Depth 3 -Compress
$schema = @{schema = "$typeJ" }
$schemaJ = ConvertTo-Json $schema -Compress
这将产生以下结果
{"schema":"{\"type\":\"record\",\"namespace\":\"customer-actions\",\"name\":\"customer-enrollment\",\"fields\":[{\"name\":\"id\",\"type\":\"int\
"},{\"name\":\"name\",\"type\":\"string\"}]}"}
看起来很糟糕;这些转义引号都是必需的。相同的转义字符用于更简单的模式,没有问题
提前谢谢
[编辑]
对架构注册表API的调用(如果有帮助)
curl -Uri http://server:8081/subjects/customer-enrollment/versions `
-Method Post `
-ContentType "application/vnd.schemaregistry.v1+json" `
-Body $schemaJ
问题是客户注册名称中的-字符
$type = @{namespace="customer-actions"; name="enrollment";
type="record";
fields=@{name="id"; type="int"},
@{name="name"; type="string"}}
$typeJ = ConvertTo-Json $type -Depth 3 -Compress
$schema = @{schema = "$typeJ" }
$schemaJ = ConvertTo-Json $schema -Compress
在公共论坛上发布一个问题后,有没有一个术语来描述你自己是如何立即找到答案的?这里的validator不确定是否有一个术语,但在你身上发生了什么