问题描述
客户代码:
clientRSocket = RSocketConnector.create()
.MetadataMimeType(WellKNownMimeType.MESSAGE_RSOCKET_COMPOSITE_MetaDATA.getString())
.payloadDecoder(PayloadDecoder.ZERO_copY)
//.reconnect(Retry.backoff(50,Duration.ofMillis(500)))
.dataMimeType(WellKNownMimeType.APPLICATION_JSON.toString())
.resume(new Resume().sessionDuration(getLocalConfig().getDuration("resumeDurationInMinutes"))
.retry(Retry.fixedDelay(Long.MAX_VALUE,getLocalConfig().getDuration("fixedDelayInSeconds")))
.streamTimeout(getLocalConfig().getDuration("resumeTimeOutInSeconds")))
.connect(TcpClientTransport.create(getLocalConfig().getInt("port")))
.doOnError(exception -> getLogger().error(DaeLogKeys.rsocket.Failed.error,exception))
.block();
客户端流请求的示例:
rsocket.requestStream(DefaultPayload.create(ByteBufAllocator.DEFAULT.buffer(),socket.route(List.of("part-type.getAll"))))
.map(Payload::getDataUtf8)
.map(doc->socket.decode(doc,DaeApiPartType.class))
.collect(Collectors.toSet()).block())
服务器响应示例:
@MessageMapping("part-type.getAll")
public Flux<DaeApiPartType> getAllPartTypes() {
return controlPartType.findAll();
}
似乎一切进展顺利。我看到客户端释放有效负载,但是什么也没有恢复。没有错误。客户陷入困境并等待答案。
在1.0.1下,此示例有效。 请告知。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)