在Java中發送WebSocket請求,可以使用Java的WebSocket客戶端庫,比如 Tyrus、Jetty等。下面是一個使用Tyrus發送WebSocket請求的示例代碼:
import javax.websocket.ClientEndpoint;
import javax.websocket.ContainerProvider;
import javax.websocket.OnMessage;
import javax.websocket.Session;
import javax.websocket.WebSocketContainer;
import java.net.URI;
@ClientEndpoint
public class WebSocketClient {
@OnMessage
public void onMessage(String message) {
System.out.println("Received message: " + message);
}
public static void main(String[] args) {
WebSocketContainer container = ContainerProvider.getWebSocketContainer();
try {
Session session = container.connectToServer(WebSocketClient.class, new URI("ws://localhost:8080/websocket"));
session.getBasicRemote().sendText("Hello, WebSocket Server!");
session.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
上面的代碼通過使用Tyrus庫中的WebSocketContainer
類來建立WebSocket連接,并通過connectToServer()
方法傳遞WebSocket客戶端類和WebSocket服務器的URI來連接到WebSocket服務器。在onMessage()
方法中定義了接收消息的處理邏輯,在main()
方法中通過session.getBasicRemote().sendText()
方法發送文本消息到WebSocket服務器,并通過session.close()
方法關閉會話。
請注意,上述示例代碼中的WebSocket服務器URI是ws://localhost:8080/websocket
,你需要根據實際情況修改為你的WebSocket服務器的URI。