跳转到主要内容

WebSocket

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

如果您想拦截或修改 WebSocket 帧,请考虑使用 WebSocketRoute


方法

expect_event

v1.9 之前添加 webSocket.expect_event

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

用法

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

参数

  • event str#

    事件名称,与传递给 webSocket.on(event) 的相同。

  • predicate 可调用对象 (可选)#

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

  • timeout 浮点数 (可选)#

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

返回


wait_for_event

v1.9 之前添加 webSocket.wait_for_event
注意

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

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

用法

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

参数

  • event str#

    事件名称,通常传递给 *.on(event) 的相同名称。

  • predicate 可调用对象 (可选)#

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

  • timeout 浮点数 (可选)#

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

返回


属性

is_closed

v1.9 之前添加 webSocket.is_closed

指示 WebSocket 已关闭。

用法

web_socket.is_closed()

返回


url

v1.9 之前添加 webSocket.url

包含 WebSocket 的 URL。

用法

web_socket.url

返回


事件

on("close")

v1.9 之前添加 webSocket.on("close")

当 WebSocket 关闭时触发。

用法

web_socket.on("close", handler)

事件数据


on("framereceived")

添加于:v1.9 webSocket.on("framereceived")

当 WebSocket 接收到帧时触发。

用法

web_socket.on("framereceived", handler)

事件数据


on("framesent")

添加于:v1.9 webSocket.on("framesent")

当 WebSocket 发送帧时触发。

用法

web_socket.on("framesent", handler)

事件数据


on("socketerror")

添加于:v1.9 webSocket.on("socketerror")

当 WebSocket 发生错误时触发。

用法

web_socket.on("socketerror", handler)

事件数据