avro - 如何在融合模式注册表中发展模式
问题描述
我正在使用 Avro/Kafka 和 Confluent 的 Avro 架构注册表。
我使用 avsc 文件和 avdl 制作了一些具有基本类型的基本模式和主题。
我正在查看 Confluent 制作的 API 文档,以尝试将 Schema 升级到版本 2。特别是这一部分:
但是当我尝试 POST 到这个端点时,我得到一个422 Conflict
.
我正在使用BACKWARDS
兼容性,并且只更新以前版本的一个字段:
{
"type": "record",
"name": "Address",
"fields": [
{"name": "id", "type": "string"},
{"name": "street", "type": "string"}
]
}
和新版本:
{
"type": "record",
"name": "Address",
"fields": [
{"name": "id", "type": "string"},
{"name": "street", "type": "string"},
{"name": "number", "type": "int"}
]
}
谁能告诉我如何发展模式?
解决方案
通过设置解决了
access.control.allow.methods=GET,POST,OPTIONS,PUT,DELETE
我之前设置为允许CORS
,*
但它似乎只允许 GET (?) 所以在更改此属性后,我能够更改/发展架构。
推荐阅读
- bash - 用于检查文件是否存在于另一个目录(包括子目录)中的 Bash 脚本
- r - 如何按因子计算线的斜率
- algorithm - Big-O 表示法:我是否需要使用归纳法,是否首选限制?
- python - 使用 Python 从 Grakn 获取数据
- c# - dotnet core 3.1 API - UserManager.ConfirmEmailAsync 返回 InvalidToken
- c++ - C++ 错误:表达式不能用作函数
- python - Cassandra ResultSet 使用分页返回相同的记录集(相同的页面)
- symfony - 如何使用 Doctrine 在 Symfony 5 中保存外键 OneToMany 关系
- ios - 在 iOS 上使用多项选择应用程序实施多项问题的建议
- javascript - 通过flask app.route动态分配dash.layout函数