java 发送ws请求
时间: 2023-08-31 10:06:26 浏览: 46
Java发送WebSocket请求可以使用Java WebSocket API,也可以使用开源的Java WebSocket客户端库,例如:Java-WebSocket。
以下是使用Java WebSocket API发送WebSocket请求的示例代码:
```java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.WebSocket;
import java.util.concurrent.CompletionStage;
public class WebSocketClient {
public static void main(String[] args) {
HttpClient httpClient = HttpClient.newHttpClient();
WebSocket webSocket = httpClient.newWebSocketBuilder()
.buildAsync(URI.create("ws://localhost:8080/ws"), new WebSocketListener())
.join();
}
private static class WebSocketListener implements WebSocket.Listener {
@Override
public void onOpen(WebSocket webSocket) {
System.out.println("WebSocket opened.");
webSocket.sendText("Hello, WebSocket!");
}
@Override
public CompletionStage<?> onText(WebSocket webSocket, CharSequence data, boolean last) {
System.out.println("Received message: " + data);
return null;
}
@Override
public CompletionStage<?> onClose(WebSocket webSocket, int statusCode, String reason) {
System.out.println("WebSocket closed. Code: " + statusCode + ", Reason: " + reason);
return null;
}
@Override
public void onError(WebSocket webSocket, Throwable error) {
System.err.println("WebSocket error: " + error.getMessage());
}
}
}
```
该示例代码将连接到本地WebSocket服务器(端口8080),并在连接打开时发送一条消息。在接收到消息时,将打印收到的消息。当连接关闭时,将打印关闭代码和原因。当发生错误时,将打印错误消息。
注意:Java WebSocket API是在Java 11中引入的。如果您使用的是早期版本的Java,则需要使用其他WebSocket库。