一个由java写的完整的websocket例子
时间: 2023-03-28 17:02:34 浏览: 88
我可以回答这个问题。以下是一个由 Java 写的完整的 WebSocket 例子:
```java
import java.net.URI;
import java.net.URISyntaxException;
import java.util.Scanner;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
import org.java_websocket.client.WebSocketClient;
import org.java_websocket.handshake.ServerHandshake;
public class WebSocketExample {
public static void main(String[] args) throws URISyntaxException, InterruptedException {
String uri = "ws://echo.websocket.org";
WebSocketClient client = new WebSocketClient(new URI(uri)) {
private CountDownLatch latch = new CountDownLatch(1);
@Override
public void onOpen(ServerHandshake handshakedata) {
System.out.println("Connected to server");
latch.countDown();
}
@Override
public void onMessage(String message) {
System.out.println("Received message: " + message);
}
@Override
public void onClose(int code, String reason, boolean remote) {
System.out.println("Disconnected from server");
}
@Override
public void onError(Exception ex) {
System.out.println("Error: " + ex.getMessage());
}
public CountDownLatch getLatch() {
return latch;
}
};
client.connect();
client.getLatch().await(5, TimeUnit.SECONDS);
if (client.isOpen()) {
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.print("Enter message to send: ");
String message = scanner.nextLine();
client.send(message);
}
}
}
}
```
这个例子使用了 Java-WebSocket 库来实现 WebSocket 客户端。它连接到了一个公共的 WebSocket 服务器,当连接成功后,可以向服务器发送消息,并接收服务器返回的消息。