gpt4 book ai didi

org.springframework.web.reactive.socket.WebSocketSession.textMessage()方法的使用及代码示例

转载 作者:知者 更新时间:2024-03-26 20:19:05 27 4
gpt4 key购买 nike

本文整理了Java中org.springframework.web.reactive.socket.WebSocketSession.textMessage()方法的一些代码示例,展示了WebSocketSession.textMessage()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。WebSocketSession.textMessage()方法的具体详情如下:
包路径:org.springframework.web.reactive.socket.WebSocketSession
类名称:WebSocketSession
方法名:textMessage

WebSocketSession.textMessage介绍

[英]Factory method to create a text WebSocketMessage using the #bufferFactory() for the session.
[中]

代码示例

代码示例来源:origin: spring-projects/spring-framework

@Override
  public Mono<Void> handle(WebSocketSession session) {
    String protocol = session.getHandshakeInfo().getSubProtocol();
    WebSocketMessage message = session.textMessage(protocol != null ? protocol : "none");
    return session.send(Mono.just(message));
  }
}

代码示例来源:origin: spring-projects/spring-framework

@Override
  public Mono<Void> handle(WebSocketSession session) {
    HttpHeaders headers = session.getHandshakeInfo().getHeaders();
    String payload = "my-header:" + headers.getFirst("my-header");
    WebSocketMessage message = session.textMessage(payload);
    return session.send(Mono.just(message));
  }
}

代码示例来源:origin: spring-cloud/spring-cloud-gateway

@Override
  public Mono<Void> handle(WebSocketSession session) {
    String protocol = session.getHandshakeInfo().getSubProtocol();
    if (!StringUtils.hasText(protocol)) {
      return Mono.error(new IllegalStateException("Missing protocol"));
    }
    List<String> protocols = session.getHandshakeInfo().getHeaders().get(SEC_WEBSOCKET_PROTOCOL);
    assertThat(protocols).contains("echo-v1,echo-v2");
    WebSocketMessage message = session.textMessage(protocol);
    return doSend(session, Mono.just(message));
  }
}

代码示例来源:origin: spring-cloud/spring-cloud-gateway

@Override
  public Mono<Void> handle(WebSocketSession session) {
    HttpHeaders headers = session.getHandshakeInfo().getHeaders();
    if (!headers.containsKey("my-header")) {
      return Mono.error(new IllegalStateException("Missing my-header"));
    }
    String payload = "my-header:" + headers.getFirst("my-header");
    WebSocketMessage message = session.textMessage(payload);
    return doSend(session, Mono.just(message));
  }
}

代码示例来源:origin: spring-cloud/spring-cloud-gateway

@Test
public void echo() throws Exception {
  int count = 100;
  Flux<String> input = Flux.range(1, count).map(index -> "msg-" + index);
  ReplayProcessor<Object> output = ReplayProcessor.create(count);
  client.execute(getUrl("/echo"),
      session -> {
        logger.debug("Starting to send messages");
        return session
            .send(input.doOnNext(s -> logger.debug("outbound " + s)).map(s -> session.textMessage(s)))
            .thenMany(session.receive().take(count).map(WebSocketMessage::getPayloadAsText))
            .subscribeWith(output)
            .doOnNext(s -> logger.debug("inbound " + s))
            .then()
            .doOnSuccessOrError((aVoid, ex) ->
                logger.debug("Done with " + (ex != null ? ex.getMessage() : "success")));
      })
      .block(Duration.ofMillis(5000));
  assertEquals(input.collectList().block(Duration.ofMillis(5000)),
      output.collectList().block(Duration.ofMillis(5000)));
}

代码示例来源:origin: spring-cloud/spring-cloud-gateway

@Test
public void echoForHttp() throws Exception {
  int count = 100;
  Flux<String> input = Flux.range(1, count).map(index -> "msg-" + index);
  ReplayProcessor<Object> output = ReplayProcessor.create(count);
  client.execute(getHttpUrl("/echoForHttp"),
      session -> {
        logger.debug("Starting to send messages");
        return session
            .send(input.doOnNext(s -> logger.debug("outbound " + s)).map(s -> session.textMessage(s)))
            .thenMany(session.receive().take(count).map(WebSocketMessage::getPayloadAsText))
            .subscribeWith(output)
            .doOnNext(s -> logger.debug("inbound " + s))
            .then()
            .doOnSuccessOrError((aVoid, ex) ->
                logger.debug("Done with " + (ex != null ? ex.getMessage() : "success")));
      })
      .block(Duration.ofMillis(5000));
  assertEquals(input.collectList().block(Duration.ofMillis(5000)),
      output.collectList().block(Duration.ofMillis(5000)));
}

代码示例来源:origin: hantsy/spring-reactive-sample

@Override
public Mono<Void> handle(WebSocketSession session) {
  String protocol = session.getHandshakeInfo().getSubProtocol();
  WebSocketMessage message = session.textMessage(this.posts.findAll().takeLast(0).toString());
  return doSend(session, Mono.just(message));
}

代码示例来源:origin: ch.rasc/wamp2spring-reactive

.binaryMessage(factory -> factory.wrap(bos.toByteArray()));
return session.textMessage(
    new String(bos.toByteArray(), StandardCharsets.UTF_8));

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com