AsyncAPI Websockets Spring 生成的代码和实现
AsyncAPI Websockets Spring generated code and implementation
我想根据 AsyncAPI 规范生成代码并试用它的工作原理。我的目标是只为每个客户端打开 1 个套接字,并通过该连接 send/receive 不同类型的消息。我找不到任何示例来说明如何生成代码和 运行 它。
这是 API yaml
asyncapi: '2.3.0'
info:
title: demo
version: '1.0.0'
description: websocket demo
servers:
test:
url: localhost
protocol: ws
channels:
data:
publish:
operationId: publishData
message:
$ref: '#/components/messages/dataMessage'
subscribe:
operationId: subscribeData
message:
$ref: '#/components/messages/dataMessage'
components:
messages:
dataMessage:
headers:
$ref: "#/components/schemas/MessageHeader"
payload:
oneOf:
- $ref: "#/components/schemas/FirstPayloadType"
- $ref: "#/components/schemas/SecondPayloadType"
schemas:
MessageHeader:
type: object
properties:
messageType:
enum:
- a
- b
- c
FirstPayloadType:
type: object
properties:
x:
type: string
y:
type: number
SecondPayloadType:
type: object
properties:
op:
type: string
tar:
type: string
然后我使用 https://github.com/asyncapi/generator 从这个带有
的 yaml 生成 java 代码
ag asyncapi.yaml @asyncapi/java-spring-template
这就是我卡住的地方,它使用 springframework 消息传递,我不知道如何在使用生成的消息处理程序时 configure/implement 它。或者我可能在 yaml 中遗漏了一些东西,所以它无法正确生成。
那是因为模板不支持 Kafka,
AMQP, and
MQTT` protocols 以外的任何内容。
截至撰写本文时,不存在任何模板供您为 WebSocket 协议生成 Java 代码。
如果您希望模板支持该协议,请为其创建功能请求。
如果您愿意,也可以author your own template。
我想根据 AsyncAPI 规范生成代码并试用它的工作原理。我的目标是只为每个客户端打开 1 个套接字,并通过该连接 send/receive 不同类型的消息。我找不到任何示例来说明如何生成代码和 运行 它。
这是 API yaml
asyncapi: '2.3.0'
info:
title: demo
version: '1.0.0'
description: websocket demo
servers:
test:
url: localhost
protocol: ws
channels:
data:
publish:
operationId: publishData
message:
$ref: '#/components/messages/dataMessage'
subscribe:
operationId: subscribeData
message:
$ref: '#/components/messages/dataMessage'
components:
messages:
dataMessage:
headers:
$ref: "#/components/schemas/MessageHeader"
payload:
oneOf:
- $ref: "#/components/schemas/FirstPayloadType"
- $ref: "#/components/schemas/SecondPayloadType"
schemas:
MessageHeader:
type: object
properties:
messageType:
enum:
- a
- b
- c
FirstPayloadType:
type: object
properties:
x:
type: string
y:
type: number
SecondPayloadType:
type: object
properties:
op:
type: string
tar:
type: string
然后我使用 https://github.com/asyncapi/generator 从这个带有
的 yaml 生成 java 代码ag asyncapi.yaml @asyncapi/java-spring-template
这就是我卡住的地方,它使用 springframework 消息传递,我不知道如何在使用生成的消息处理程序时 configure/implement 它。或者我可能在 yaml 中遗漏了一些东西,所以它无法正确生成。
那是因为模板不支持 Kafka,
AMQP, and
MQTT` protocols 以外的任何内容。
截至撰写本文时,不存在任何模板供您为 WebSocket 协议生成 Java 代码。
如果您希望模板支持该协议,请为其创建功能请求。
如果您愿意,也可以author your own template。