要實現Java中的Socket.IO群發功能,可以使用Socket.IO的broadcast功能。以下是一個簡單的示例代碼:
import io.socket.client.IO;
import io.socket.client.Socket;
import org.json.JSONObject;
import java.net.URISyntaxException;
public class SocketIOExample {
public static void main(String[] args) {
try {
Socket socket = IO.socket("http://localhost:3000");
socket.connect();
socket.on(Socket.EVENT_CONNECT, args1 -> {
System.out.println("Connected to server");
// 群發消息
JSONObject message = new JSONObject();
message.put("message", "Hello, everyone!");
socket.emit("broadcast", message);
});
socket.on("broadcast", args1 -> {
JSONObject data = (JSONObject) args1[0];
System.out.println("Received message: " + data.getString("message"));
});
socket.connect();
} catch (URISyntaxException e) {
e.printStackTrace();
}
}
}
在上面的示例中,我們首先創建一個Socket實例并連接到服務器。一旦連接成功,我們發送一個包含消息內容的JSONObject對象,并在服務器端使用"broadcast"事件進行廣播。在客戶端接收到廣播消息時,我們將消息內容提取出來并打印出來。
請注意,以上是一個簡單示例,實際使用時可能需要更復雜的邏輯來處理群發消息。您可以根據自己的需求對代碼進行擴展和修改。