0
我已經創建了一個我希望使用Web套接字的彈簧引導應用程序。當我沒有參數使用它時,它的工作正常。下面是沒有參數的代碼在WebSocketConfigurer中使用@PathParam(javax.websocket.server.PathParam)用於Spring Boot應用程序
@Configuration
@EnableWebSocket
public class WebSocketConfig implements WebSocketConfigurer {
@Override
public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
registry.addHandler(new ABC(), "/getABC").setAllowedOrigins("*");
registry.addHandler(new XYZ(), "/getXYZ").setAllowedOrigins("*");
}
}
但現在我需要傳遞一個參數給它使用@PathParam。我不能夠使用它在此配置像
registry.addHandler(new XYZ(), "/getXYZ{someId}").setAllowedOrigins("*");
我的處理程序代碼:
public class XYZ extends TextWebSocketHandler {
static List<WebSocketSession> sessions = new CopyOnWriteArrayList<>();
String someId;
public XYZ() {
}
public XYZ(@PathParam(value = "someId") String someId) {
this.someId= someId;
}
@Override
public void afterConnectionEstablished(WebSocketSession session) throws Exception {
// the messages will be broadcasted to all users.
sessions.add(session);
}
}
誰能幫助?
你找到一個解決方案?我被困在同一點。 –