跳至主要内容

WebSocket

WebSocket 类代表页面内的 WebSocket 连接。它提供了检查和操作正在传输和接收数据的能力。

如果你想拦截或修改WebSocket帧,可以考虑使用WebSocketRoute


方法

expect_event

Added before v1.9 webSocket.expect_event

等待事件触发并将其值传递给谓词函数。当谓词返回真值时返回。如果在事件触发前WebSocket已关闭,将抛出错误。返回事件数据值。

用法

web_socket.expect_event(event)
web_socket.expect_event(event, **kwargs)

参数

  • event str#

    事件名称,与传入webSocket.on(event)的参数相同。

  • predicate Callable (可选)#

    接收事件数据,当等待应解决时解析为真值。

  • timeout float (可选参数)#

    最大等待时间,单位为毫秒。默认为30000(30秒)。传入0表示禁用超时。默认值可以通过browser_context.set_default_timeout()进行修改。

返回


wait_for_event

Added before v1.9 webSocket.wait_for_event
note

在大多数情况下,您应该使用 web_socket.expect_event()

等待给定的event触发。如果提供了predicate函数,它会将事件的值传递给predicate函数,并等待predicate(event)返回真值。如果在event触发之前socket被关闭,将会抛出错误。

用法

web_socket.wait_for_event(event)
web_socket.wait_for_event(event, **kwargs)

参数

  • event str#

    事件名称,通常与传入*.on(event)中的相同。

  • predicate Callable (可选)#

    接收事件数据,当等待应解决时解析为真值。

  • timeout float (可选参数)#

    最大等待时间,单位为毫秒。默认为30000(30秒)。传入0表示禁用超时。默认值可以通过browser_context.set_default_timeout()进行修改。

返回


属性

is_closed

Added before v1.9 webSocket.is_closed

表示WebSocket连接已关闭。

用法

web_socket.is_closed()

返回


网址

Added before v1.9 webSocket.url

包含WebSocket的URL。

用法

web_socket.url

返回


事件

on("close")

Added before v1.9 webSocket.on("close")

当websocket关闭时触发。

用法

web_socket.on("close", handler)

事件数据


on("framereceived")

Added in: v1.9 webSocket.on("framereceived")

当websocket接收到帧时触发。

用法

web_socket.on("framereceived", handler)

事件数据


on("framesent")

Added in: v1.9 webSocket.on("framesent")

当WebSocket发送帧时触发。

用法

web_socket.on("framesent", handler)

事件数据


on("socketerror")

Added in: v1.9 webSocket.on("socketerror")

当websocket发生错误时触发。

用法

web_socket.on("socketerror", handler)

事件数据