Spring Rsocket Server に RSocket-Java を使用する rsocket ルーティング メタデータと同様ですが、RSocket Net Client には、ルートに応じて webfluxes を返すポート 7000 の Websocket エンドポイント ルートに Spring Boot @MessageMapping を使用します。例えば:
@MessageMapping(value = "helloWorld")
public Flux<String> getFluxSocket() {
log.traceEntry();
log.info("In hello world");
return Flux.just("{\"Hello\":\"World\"}");
}
スプリング ブート サーバーがローカルで実行されている場合、このフラックスを取得するには、rsc クライアントを使用できます。
java -jar rsc.jar --debug --request --route helloWorld ws://localhost:7000
またはストリームの場合
java -jar rsc.jar --debug --stream --route myStream ws://localhost:7000
これを C# Net でプログラムで行うには、リクエスト ルーティングは RSocket Net ではまだサポートされていませんが、メタデータ ペイロードを使用できることがここに示されています。誰かがこれに相当するネットを手に入れましたか?
CompositeByteBuf metadata = ByteBufAllocator.DEFAULT.compositeBuffer();
RoutingMetadata routingMetadata = TaggingMetadataCodec.createRoutingMetadata(ByteBufAllocator.DEFAULT, List.of("/route"));
CompositeMetadataCodec.encodeAndAddMetadata(metadata,
ByteBufAllocator.DEFAULT,
WellKnownMimeType.MESSAGE_RSOCKET_ROUTING,
routingMetadata.getContent());
ありがとう