You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Quarkus WebSockets Next的WebSocketConnector设置查询字符串?

在Quarkus WebSockets Next中给WebSocketConnector设置查询字符串的方法

可以直接通过构造包含查询字符串的目标URI来实现,WebSocketConnector的baseUri方法支持传入带查询参数的完整WebSocket URI,不需要额外的特殊API。

直接拼接查询字符串的示例

如果你的目标地址是固定或已知的,直接拼接查询参数到URI中即可:

String serverUriWithQuery = "ws://localhost:8080/your-endpoint?token=abc123&client-id=xyz";
webSocketConnector.baseUri(serverUriWithQuery).connect();

动态构建带查询参数的URI(推荐)

如果需要动态生成查询参数,使用JAX-RS的UriBuilder来构建URI可以避免手动拼接的格式错误:

import javax.ws.rs.core.UriBuilder;

// 假设原始serverUri是不带查询参数的基础地址
URI targetUri = UriBuilder.fromUri(serverUri)
        .queryParam("token", "abc123")
        .queryParam("client-id", "xyz")
        .build();
webSocketConnector.baseUri(targetUri).connect();

服务端获取查询参数

在Quarkus WebSockets Next的服务端,可以通过@QueryParam注解直接获取这些参数:

import io.quarkus.websockets.next.OnOpen;
import jakarta.ws.rs.QueryParam;

public class MyWebSocketEndpoint {
    @OnOpen
    public void onConnect(@QueryParam("token") String token, @QueryParam("client-id") String clientId) {
        // 使用获取到的查询参数
    }
}

内容的提问来源于stack exchange,提问作者Kirill Byvshev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 13:47:04