升级到1.0.2客户端后,rsocket停止接收答案

问题描述

客户代码

   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 (将#修改为@)