gpt4 book ai didi

java - Spring boot 在@MessageMapping中获取域名

转载 作者:行者123 更新时间:2023-12-01 18:06:02 24 4
gpt4 key购买 nike

在Spring Boot中,我可以通过@RequestMapping中的@RequestHeader String host获取域名但我怎样才能在 @MessageMapping 中做同样的事情呢?

例如。

@RequestMapping("/abc")
public String getHost(@RequestHeader String host) {
return host;
}

我将 Spring Boot 托管在 www.example.com 中,然后当我访问 www.example.com/abc 时,我会返回 www .example.com

我想在@MessageMapping代码中做同样的事情

下面是我的@MessageMapping代码。

@MessageMapping("/cba")
public void cba(SimpleRequest request, SimpMessageHeaderAccessor accessor) {
//System.out.println(host);
}

SimpleRequest 是来 self 的 websocket 客户端的请求对象

我想在我的 @MessageMapping 代码中获取域名

谢谢

最佳答案

你可以尝试使用@Header注释请参阅下面的示例

@MessageMapping("/optionalHeaders")
public void optionalHeaders(@Header(name="foo", required=false) String foo1, @Header("foo") Optional<String> foo2) {
this.method = "optionalHeaders";
this.arguments.put("foo1", foo1);
this.arguments.put("foo2", (foo2.isPresent() ? foo2.get() : null));
}

关于java - Spring boot 在@MessageMapping中获取域名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60557097/

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