介绍
很多直播或对数据及时性要求比较高的网站,使用了WebSocket。这种数据要怎么抓呢?
我们这里以socket.io为例,我们可以查看网站网页源代码看使用的H5的WebSocket还是socket.io等JS库。
这里以java语言为例说明。假定网站使用的是socket.io库来实现消息推送。我们如何通过java来获取服务端推送的信息呢?
socket.io提供了java的客户端实现socket.io-client。所以获取服务端推送的数据,本质是作为一个客户端连接上WebSocket server。
连接websocket server接收推送的数据
首先添加依赖
<dependency>
<groupId>io.socket</groupId>
<artifactId>socket.io-client</artifactId>
<version>1.0.0</version>
</dependency>
ws地址的java代码
final Socket socket = IO.socket("http://localhost:9098/");
socket.on(Socket.EVENT_CONNECTING, new Emitter.Listener() {
@Override
public void call(Object... object