当我像这样创建rsocketRequester
时,它工作得很好:
@Bean
RSocketRequester rSocketRequester(RSocketStrategies rSocketStrategies) {
return RSocketRequester.builder()
.rsocketStrategies(rSocketStrategies)
.connectTcp("localhost", 7000)
.block();
}
但是当我试图发送消息时,它会抛出一个异常,创建如下所示:
@Bean
RSocket rSocket() {
return RSocketFactory
.connect()
.transport(TcpClientTransport.create(7000))
.start()
.block();
}
@Bean
RSocketRequester rSocketRequester(RSocketStrategies rSocketStrategies) {
return RSocketRequester.wrap(rSocket(), MediaType.APPLICATION_CBOR, MimeTypeUtils.parseMimeType(WellKnownMimeType.MESSAGE_RSOCKET_COMPOSITE_METADATA.getString()), rSocketStrategies);
}
发送功能:
public Mono<String> request(String route, String data, Class<String> clazz) {
return rSocketRequester.route(route).data(data).retrieveMono(clazz);
}
@Controller
@AllArgsConstructor
public class RTestController {
private EchoService echoService;
@MessageMapping("test")
Mono<String> test(String value) {
return echoService.echo(value);
}
}
TL;DR:这不是Spring的问题,而是您创建客户机RSocket连接的方式的问题。
RSocketRequester.wrap
方法通常用于服务器端,一旦客户端启动了连接并且服务器希望向另一方发送请求。Javadoc表明您可以在客户端使用它,这是一个完全有效的用例。
现在,rsocketRequester.wrap
在其参数中接受关于预期数据mime类型和元数据mime类型的数据。这通常是双方在建立连接时协商的,使用RSocket setup/metadata_push帧。一旦建立了连接,就完成了。wrap
方法需要这些参数,因为我们不能很容易地从现有的RSocket中提取这些信息。
当我像这样创建时,它工作得很好: 但当我尝试发送消息创建if时,它会抛出一个异常: 发送功能: 函数有什么问题?
我试图使用Micronaut、GraalVM和Docker在Java中创建和部署AWS Lambda函数。我正在按照本教程使用GraalVM运行时创建AWS lambda。 我使用命令创建了java项目。然后在不改变代码或配置文件的情况下,尝试用GraalVM本机映像构建Docker映像。在docker build步骤中,当构建graalvm本机映像时,我会收到以下警告: 警告:正在中止独立映像生
本文向大家介绍Lua之wrap函数用法示例,包括了Lua之wrap函数用法示例的使用技巧和注意事项,需要的朋友参考一下 wrap和Create差不多,都是去创建一个coroutine,有些区别: 1,wrap不会通过resume去得到第一个返回值(错误信息) 2,在创建完之后,直接调用函数,转到coroutine,而create却要resume才能转到coroutine。 3,wrap不能查看状态
我想创建一个Azure功能与JavaSDK,但我有一些问题定义触发器,我的代码创建的函数应用程序是: 我想定义一个EventHub触发器,但我不知道怎么做,我看到我的函数对象有以下方法: 有效载荷格式是什么?还有别的办法吗? 问候维克多
我试图实现的是,我希望能够创建一个Azure函数,该函数将使用YouTube API将视频上传到YouTube。例如:https://developers.google.com/youtube/v3/docs/videos/insert .创建 Azure 函数后,我想在 Azure 逻辑应用中使用该函数。下面是 Azure 函数的代码(上移的视频): 当我运行这段代码时,我没有看到这样的预期结果
创建一个函数,但它给出的错误数据库表如下所示