bokeh.server.views#

auth_request_handler#

提供一个混入类,用于向请求处理程序添加授权钩子。

class AuthRequestHandler(application: Application, request: HTTPServerRequest, **kwargs: Any)[source]#

此混入类添加了预期的 Tornado 授权钩子

  • get_login_url

  • get_current_user

  • prepare

所有这些都委托给 Bokeh tornado 应用程序上配置的 AuthProvider

get_current_user()[source]#

委托给身份验证提供程序的同步 get_user 方法

get_login_url()[source]#

委托给身份验证提供程序的``get_login_url`` 方法,或 login_url 属性。

async prepare()[source]#

get_current_user 的异步对应方法

autoload_js_handler#

提供一个请求处理程序,返回显示文档的页面。

class AutoloadJsHandler(tornado_app: BokehTornado, *args, **kw)[source]#

为自动加载 JS 代码块实现自定义 Tornado 处理程序

async options(*args, **kwargs)[source]#

浏览器在 GET 请求之前会在后台发出 OPTIONS 请求

set_default_headers()[source]#

重写此方法以在请求开始时设置 HTTP 标头。

例如,这是设置自定义 Server 标头的位置。请注意,在正常请求处理流程中设置此类标头可能无法达到您想要的效果,因为标头可能会在错误处理期间被重置。

doc_handler#

提供一个请求处理程序,返回显示文档的页面。

class DocHandler(tornado_app: BokehTornado, *args, **kw)[source]#

为文档显示页面实现自定义 Tornado 处理程序

autoload_metadata_handler#

提供一个请求处理程序,返回包含应用程序元数据信息的 JSON。

class MetadataHandler(tornado_app: BokehTornado, *args, **kw)[source]#

为文档显示页面实现自定义 Tornado 处理程序

root_handler#

提供一个请求处理程序,列出应用程序(如果多个),或者(如果只有一个)重定向到该应用程序的路由。

class RootHandler(application: Application, request: HTTPServerRequest, **kwargs: Any)[source]#

实现自定义 Tornado 处理程序以显示可用的应用程序。如果只有一个应用程序,则重定向到该应用程序路由

initialize(*args, **kw)[source]#

session_handler#

处理 bokeh-session-id 的抽象请求处理程序

class SessionHandler(tornado_app: BokehTornado, *args, **kw)[source]#

为文档显示页面实现自定义 Tornado 处理程序

initialize(*args, **kw)[source]#

static_handler#

提供一个请求处理程序,返回显示文档的页面。

class StaticHandler(tornado_app, *args, **kw)[source]#

为 BokehJS JavaScript 和 CSS 资源实现自定义 Tornado 静态文件处理程序。

ws#

为 Bokeh Server 应用程序提供 WebSocket 处理程序。

class WSHandler(tornado_app, *args, **kw)[source]#

为 Bokeh Server 实现自定义 Tornado WebSocketHandler。

check_origin(origin: str) bool[source]#

为 Tornado 实现要调用的 check_origin 策略。

提供的来源将与 Bokeh 服务器的允许列表进行比较。如果来源不在允许列表中,将记录错误并返回 False。

参数:

origin (str) – 连接来源的 URL

返回:

bool,如果允许连接则为 True,否则为 False

get_compression_options() dict[str, Any] | None[source]#

重写以返回连接的压缩选项。

如果此方法返回 None(默认值),则压缩将被禁用。如果它返回一个 dict(即使是空 dict),则压缩将被启用。dict 的内容可用于控制以下压缩选项

compression_level 指定压缩级别。

mem_level 指定用于内部压缩状态的内存量。

在版本 4.1 中添加。

Changed in version 4.5: 在版本 4.5 中更改:添加了 compression_levelmem_level

initialize(application_context, bokeh_websocket_path)[source]#
on_close() None[source]#

当连接关闭时清理。

async on_message(fragment: str | bytes) None[source]#

处理单个线路协议片段。

websocket RFC 指定了用于区分文本帧和二进制帧的操作码。Tornado 根据该操作码传递给我们文本或二进制字符串,我们必须查看片段的类型才能知道我们得到了什么。

参数:

fragment (unicode or bytes) – 要处理的线路片段

on_pong(data: bytes) None[source]#

当收到对 ping 帧的响应时调用。

open() None[source]#

初始化与客户端的连接。

返回:

None

select_subprotocol(subprotocols: list[str]) str | None[source]#

重写以实现子协议协商。

subprotocols 是一个字符串列表,标识客户端提议的子协议。可以重写此方法以返回其中一个字符串来选择它,或者返回 None 以不选择子协议。

未能选择子协议不会自动中止连接,但如果未选择客户端提议的任何子协议,客户端可能会关闭连接。

列表可能为空,在这种情况下,此方法必须返回 None。即使没有提议子协议,此方法也始终被调用一次,以便可以告知处理程序这一事实。

Changed in version 5.1: 在版本 5.1 中更改:以前,如果客户端没有提议子协议,则此方法会使用包含空字符串而不是空列表的列表调用。

async send_message(message: Message[Any]) None[source]#

向连接的客户端发送 Bokeh Server 协议消息。

参数:

message (Message) – 要发送的消息

async write_message(message: bytes | str | dict[str, Any], binary: bool = False, locked: bool = True) None[source]#

重写父类 write_message,使其在写入之前获取写锁。