如何使用JEE7 Websockets将参数传递给@OnOpen方法,

我有这个代码

@ServerEndpoint(value = "/websocket")

public class Service {

private String clientId;

@OnOpen

public void init(Session session) throws IOException {

//opening a websocket

// get clientId

clientId = // Code here to get initialization parameter.

}

}

如何从打开套接字的客户端获取初始化参数?

回答:

取决于初始化参数的含义。您可以执行以下操作:

@ServerEndpoint(value = "/websocket/{clientId}")

public class Service {

private volatile String clientId;

@OnOpen

public void init(@PathParam("clientId") String clientId, Session session) throws IOException {

this.clientId = clientId;

}

}

然后,您必须使用以下URL访问端点:ws://host/contextPath/websocket/[clientId]

如果您使用查询参数,请参阅Session#getQueryString()

以上是 如何使用JEE7 Websockets将参数传递给@OnOpen方法, 的全部内容, 来源链接: utcz.com/qa/413129.html

回到顶部