API引用

子模块

sanic.app 模块

class sanic.app.Sanic(name=None, router=None, error_handler=None, load_env=True, request_class=None, strict_slashes=False, log_config=None, configure_logging=True)

基类:object

add_route(handler, uri, methods=frozenset({'GET'}), host=None, strict_slashes=None, version=None, name=None, stream=False)

将类实例或函数注册为应用程序URL路由的处理程序的帮助器方法。

参数
  • handler -- 函数或类实例

  • uri -- URL路径

  • methods -- 允许的方法列表或元组,如果使用httpmethodview,则会重写这些方法

  • host --

  • strict_slashes --

  • version --

  • name -- URL的用户定义路由名称

  • stream -- 布尔值,指定处理程序是否为流处理程序

返回

函数或类实例

add_task(task)

在循环开始后,安排任务稍后运行。与asyncio.secure-future不同的是,它也不会返回未来,实际的secure-future调用会延迟到服务器启动之前。

参数

task -- 未来、古鲁特或等待

add_websocket_route(handler, uri, host=None, strict_slashes=None, subprotocols=None, version=None, name=None)

将函数注册为WebSocket路由的帮助器方法。

参数
  • handler -- 可以处理WebSocket请求的类的可调用函数或实例

  • host -- 主机IP或FQDN详细信息

  • uri -- 将映射到websocket处理程序的URL路径

  • strict_slashes -- 如果API端点需要以“/”终止或不终止

  • subprotocols -- 用于WebSocket握手的子协议

  • name -- 为该URL分配的唯一名称,以便它可以与 url_for()

返回

反对者装饰者 websocket()

property asgi_client
blueprint(blueprint, **options)

在应用程序上注册蓝图。

参数
  • blueprint -- 蓝图对象或其(列表、元组)

  • options -- 带蓝图默认值的选项字典

返回

没有什么

converted_response_type(response)

未提供实现。

async create_server(host: Optional[str] = None, port: Optional[int] = None, *, debug: bool = False, ssl: Optional[Union[dict, ssl.SSLContext]] = None, sock: Optional[socket.socket] = None, protocol: Type[asyncio.protocols.Protocol] = None, backlog: int = 100, stop_event: Any = None, access_log: Optional[bool] = None, unix: Optional[str] = None, return_asyncio_server=False, asyncio_server_kwargs=None) → Optional[sanic.server.AsyncioServer]

的异步版本 run() .

此方法将负责调用 before_start 事件通过 trigger_events() 方法调用,然后启动 桑尼克 应用程序处于异步模式。

注解

这不支持多处理,并且不是运行 Sanic 应用。

参数
  • host (str) -- 主机地址

  • port (int) -- 端口到主机上

  • debug (bool) -- 启用调试输出(减慢服务器速度)

  • ssl (SSLContext or dict) -- sslcontext,或工作进程的ssl加密的证书和密钥的位置

  • sock (socket) -- 服务器接受连接的套接字

  • protocol (type[Protocol]) -- 异步协议类的子类

  • backlog (int) -- 在拒绝新连接之前,系统将允许的一些未被接受的连接

  • stop_event (None) -- 停止应用程序前要触发的事件-已弃用

  • access_log (bool) -- 允许写入访问日志(减慢服务器速度)

  • return_asyncio_server (bool) -- 定义是否需要返回asyncio.server或立即启动它的标志

  • asyncio_server_kwargs (dict) -- asyncio/uvloop create_server方法的键值参数

返回

asyncio server如果return_asyncio_server为true,则为空

delete(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL DELETE HTTP 方法

参数
  • uri -- 要标记到的URL DELETE 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

enable_websocket(enable=True)

启用或禁用对WebSocket的支持。

如果将WebSocket路由添加到应用程序,则会自动启用WebSocket。

exception(*exceptions)

修饰要注册为异常处理程序的函数

参数

exceptions -- 例外

返回

装饰功能

get(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL GET HTTP 方法

参数
  • uri -- 要标记到的URL GET 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

async handle_request(request, write_callback, stream_callback)

接受来自HTTP服务器的请求并返回要发送回的响应对象HTTP服务器只需要一个响应对象,因此必须在此处进行异常处理。

参数
  • request -- HTTP请求对象

  • write_callback -- 以响应作为唯一参数调用的同步响应函数

  • stream_callback -- 处理流式处理程序生成的流式ttpresponse的协程。

返回

没有什么

head(uri, host=None, strict_slashes=None, version=None, name=None)
listener(event)

从修饰函数创建侦听器。

参数

event -- 要收听的事件

property loop

与asyncio.get_event_loop()同义。

仅在使用时支持 app.run 方法。

middleware(middleware_or_request)

装饰和注册在请求之前调用的中间件。可以调用为 @app.middleware@应用中间件(请求)

Param

中间件请求:用于标识正在注册的中间件类型的可选参数。

options(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL OPTIONS HTTP 方法

参数
  • uri -- 要标记到的URL OPTIONS 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

patch(uri, host=None, strict_slashes=None, stream=False, version=None, name=None)

在下添加API URL PATCH HTTP 方法

参数
  • uri -- 要标记到的URL PATCH 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

post(uri, host=None, strict_slashes=None, stream=False, version=None, name=None)

在下添加API URL POST HTTP 方法

参数
  • uri -- 要标记到的URL POST 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

put(uri, host=None, strict_slashes=None, stream=False, version=None, name=None)

在下添加API URL PUT HTTP 方法

参数
  • uri -- 要标记到的URL PUT 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

register_blueprint(*args, **kwargs)

为调用 blueprint() 方法

注解

在1.0中被弃用。使用 blueprint() 相反。

参数
  • args -- 蓝图对象或其(列表、元组)

  • kwargs -- 带蓝图默认值的选项字典

返回

没有

register_listener(listener, event)

注册给定事件的侦听器。

参数
  • listener -- 可调用,即设置数据库(应用程序,循环)

  • event -- 何时注册侦听器,即“在服务器启动之前”

返回

听众

register_middleware(middleware, attach_to='request')

注册一个应用程序级中间件,该中间件将附加到此应用程序下注册的所有API URL。

此方法由 middleware() 在应用程序级别提供的装饰器。

参数
  • middleware -- 要附加到中间件的回调方法

  • attach_to -- 在中间件的生命周期中需要调用中间件的状态 HTTP请求 . 请求 -在处理请求之前调用 响应 -在返回响应之前调用

返回

装饰器方法

register_named_middleware(middleware, route_names, attach_to='request')
route(uri, methods=frozenset({'GET'}), host=None, strict_slashes=None, stream=False, version=None, name=None)

修饰要注册为路由的函数

参数
  • uri -- URL路径

  • methods -- 允许的方法列表或元组

  • host --

  • strict_slashes --

  • stream --

  • version --

  • name -- URL的用户定义路由名称

返回

路由元组,修饰函数

run(host: Optional[str] = None, port: Optional[int] = None, *, debug: bool = False, auto_reload: Optional[bool] = None, ssl: Optional[Union[dict, ssl.SSLContext]] = None, sock: Optional[socket.socket] = None, workers: int = 1, protocol: Optional[Type[asyncio.protocols.Protocol]] = None, backlog: int = 100, stop_event: Any = None, register_sys_signals: bool = True, access_log: Optional[bool] = None, unix: Optional[str] = None, loop: None = None) → None

运行HTTP服务器并监听,直到键盘中断或终端信号。在终端上,在关闭之前排空连接。

参数
  • host (str) -- 主机地址

  • port (int) -- 端口到主机上

  • debug (bool) -- 启用调试输出(减慢服务器速度)

  • auto_reload -- 每当源代码被更改时重新加载应用程序。在调试模式下默认启用。

  • ssl (SSLContext or dict) -- sslcontext,或工作进程的ssl加密的证书和密钥的位置

  • sock (socket) -- 服务器接受连接的套接字

  • workers (int) -- 在尊重它之前接收的进程数

  • protocol (type[Protocol]) -- 异步协议类的子类

  • backlog (int) -- 在拒绝新连接之前,系统将允许的一些未被接受的连接

  • stop_event (None) -- 停止应用程序前要触发的事件-已弃用

  • register_sys_signals (bool) -- 注册 SIG* 事件

  • access_log (bool) -- 允许写入访问日志(减慢服务器速度)

  • unix (str) -- 要监听的Unix套接字而不是TCP端口

返回

没有什么

static(uri, file_or_directory, pattern='/?.+', use_modified_since=True, use_content_range=False, stream_large_files=False, name='static', host=None, strict_slashes=None, content_type=None)

注册根目录以从中提供文件。输入可以是文件或目录。此方法将使设置 Route 服务静态文件所必需的。

参数
  • uri -- 用于服务静态内容的URL路径

  • file_or_directory -- 包含静态文件的静态文件/目录的路径

  • pattern -- 识别有效静态文件的regex模式

  • use_modified_since -- 如果为真,则发送文件修改时间,如果浏览器与服务器匹配,则返回“未修改”。

  • use_content_range -- 如果为真,则处理范围请求的头并发送请求的文件部分

  • stream_large_files -- 如果为真,请使用 StreamingHTTPResponse.file_stream() 处理程序而不是 HTTPResponse.file() 用于发送文件的处理程序。如果这是一个整数,则表示要切换到的阈值大小 StreamingHTTPResponse.file_stream()

  • name -- 用于URL的用户定义名称

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • content_type -- 标题的用户定义内容类型

返回

没有

stop()

这会杀死 Sanic

property test_client
async trigger_events(events, loop)

触发器事件(函数或异步):参数事件:要执行的一个或多个同步或异步函数:参数循环:事件循环

update_config(config: Union[bytes, str, dict, Any])

更新应用程序配置.

请参考配置.py::Config.update_配置文件。

url_for(view_name: str, **kwargs)

基于视图名称和提供的值生成URL。

为了构建URL,必须将所有请求参数作为关键字参数提供,并且每个参数必须通过指定参数类型的测试。如果不满足这些条件,a URLBuildError 将被抛出。

不是请求参数的关键字参数将包含在输出URL的查询字符串中。

参数
  • view_name -- 引用视图名称的字符串

  • **kwargs -- 用于生成请求参数和查询字符串参数的键和值。

返回

内置URL

产生:

URLBuildError

websocket(uri, host=None, strict_slashes=None, subprotocols=None, version=None, name=None)

修饰要注册为websocket路由的函数

参数
  • uri -- URL路径

  • host -- 主机IP或FQDN详细信息

  • strict_slashes -- 如果API端点需要以“/”终止或不终止

  • subprotocols -- 具有支持的子协议的str的可选列表

  • name -- 为该URL分配的唯一名称,以便它可以与 url_for()

返回

路由元组,修饰函数

sanic.blueprints 模块

class sanic.blueprints.Blueprint(name, url_prefix=None, host=None, version=None, strict_slashes=None)

基类:object

add_route(handler, uri, methods=frozenset({'GET'}), host=None, strict_slashes=None, version=None, name=None, stream=False)

从函数创建蓝图路由。

参数
  • handler -- 用于处理URI请求的函数。接受带有视图类方法的函数或类实例。

  • uri -- 路由可访问的终结点。

  • methods -- 可接受的HTTP方法列表。

  • host -- 要使用的SANIC服务器的FQDN的IP地址。

  • strict_slashes -- 强制通过培训请求API URL /

  • version -- 蓝图版本

  • name -- URL的用户定义路由名称

  • stream -- 布尔值,指定处理程序是否为流处理程序

返回

函数或类实例

add_websocket_route(handler, uri, host=None, version=None, name=None)

从函数创建蓝图WebSocket路由。

参数
  • handler -- 用于处理URI请求的函数。接受带有视图类方法的函数或类实例。

  • uri -- 路由可访问的终结点。

  • host -- 要使用的SANIC服务器的FQDN的IP地址。

  • version -- 蓝图版本

  • name -- 用于标识WebSocket路由的唯一名称

返回

函数或类实例

delete(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL DELETE HTTP 方法

参数
  • uri -- 要标记到的URL DELETE 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

exception(*args, **kwargs)

此方法允许为有问题的当前蓝图创建全局异常处理程序。

参数
  • args -- 处理程序要捕获的python异常列表

  • kwargs -- 要传递给异常处理程序的其他可选参数

:返回修饰方法以处理任何

在此蓝图下注册的路线。

get(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL GET HTTP 方法

参数
  • uri -- 要标记到的URL GET 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

static group(*blueprints, url_prefix='')

创建一个蓝图列表,可以选择在通用URL前缀下对其进行分组。

参数
  • blueprints -- 要注册为组的蓝图

  • url_prefix -- 所有子前缀的URL路由

head(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL HEAD HTTP 方法

参数
  • uri -- 要标记到的URL HEAD 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

listener(event)

从修饰函数创建侦听器。

参数

event -- 要收听的事件。

middleware(*args, **kwargs)

从修饰函数创建蓝图中间件。

参数
  • args -- 调用中间件时要使用的位置参数

  • kwargs -- 可用于中间件的可选关键字参数。

options(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL OPTIONS HTTP 方法

参数
  • uri -- 要标记到的URL OPTIONS 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

patch(uri, host=None, strict_slashes=None, stream=False, version=None, name=None)

在下添加API URL PATCH HTTP 方法

参数
  • uri -- 要标记到的URL PATCH 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

post(uri, host=None, strict_slashes=None, stream=False, version=None, name=None)

在下添加API URL POST HTTP 方法

参数
  • uri -- 要标记到的URL POST 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

put(uri, host=None, strict_slashes=None, stream=False, version=None, name=None)

在下添加API URL PUT HTTP 方法

参数
  • uri -- 要标记到的URL PUT 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

register(app, options)

将蓝图注册到sanic应用程序。

参数
  • app -- 实例 sanic.app.Sanic

  • options -- 将蓝图注册到应用程序时要使用的选项。 url_prefix -覆盖蓝图前缀的URL前缀

route(uri, methods=frozenset({'GET'}), host=None, strict_slashes=None, stream=False, version=None, name=None)

从修饰函数创建蓝图路由。

参数
  • uri -- 路由可访问的终结点。

  • methods -- 可接受的HTTP方法列表。

  • host -- 要使用的SANIC服务器的FQDN的IP地址。

  • strict_slashes -- 强制通过培训请求API URL /

  • stream -- 如果路由应该提供流支持

  • version -- 蓝图版本

  • name -- 用于标识路由的唯一名称

:返回一个修饰方法,调用该方法时将返回一个对象

类型的 FutureRoute

static(uri, file_or_directory, *args, **kwargs)

从修饰函数创建蓝图静态路由。

参数
  • uri -- 路由可访问的终结点。

  • file_or_directory -- 静态资产。

websocket(uri, host=None, strict_slashes=None, version=None, name=None)

从修饰函数创建蓝图WebSocket路由。

参数
  • uri -- 路由可访问的终结点。

  • host -- 要使用的SANIC服务器的FQDN的IP地址。

  • strict_slashes -- 强制通过培训请求API URL /

  • version -- 蓝图版本

  • name -- 用于标识WebSocket路由的唯一名称

class sanic.blueprints.FutureException(handler, args, kwargs)

基类:tuple

property args

字段编号1的别名

property handler

字段编号0的别名

property kwargs

字段编号2的别名

class sanic.blueprints.FutureListener(handler, uri, methods, host)

基类:tuple

property handler

字段编号0的别名

property host

字段编号3的别名

property methods

字段编号2的别名

property uri

字段编号1的别名

class sanic.blueprints.FutureMiddleware(middleware, args, kwargs)

基类:tuple

property args

字段编号1的别名

property kwargs

字段编号2的别名

property middleware

字段编号0的别名

class sanic.blueprints.FutureRoute(handler, uri, methods, host, strict_slashes, stream, version, name)

基类:tuple

property handler

字段编号0的别名

property host

字段编号3的别名

property methods

字段编号2的别名

property name

字段编号7的别名

property stream

字段5的别名

property strict_slashes

字段编号4的别名

property uri

字段编号1的别名

property version

字段编号6的别名

class sanic.blueprints.FutureStatic(uri, file_or_directory, args, kwargs)

基类:tuple

property args

字段编号2的别名

property file_or_directory

字段编号1的别名

property kwargs

字段编号3的别名

property uri

字段编号0的别名

sanic.bluent_组模块

class sanic.blueprint_group.BlueprintGroup(url_prefix=None)

基类:collections.abc.MutableSequence

这个类提供了一种机制来使用 group() 方法在 Blueprint . 为了避免重新编写某些现有实现,该类提供了一个自定义迭代器实现,允许您将该类的对象用作现有实现中的列表/元组。

property blueprints

检索此组下所有可用蓝图的列表。:返回:蓝图实例列表

insert(index: int, item: object) → None

抽象类 MutableSequence 利用此插入方法执行 BlueprintGroup.append 操作。

参数
  • index -- 用于删除新蓝图项的索引

  • item -- 新的 Blueprint 对象。

返回

没有

middleware(*args, **kwargs)

可以用来实现属于这个特定蓝图组的所有蓝图的中间件插件的装饰器。

对于嵌套的蓝图组,相同的中间件递归地应用于每个蓝图。

参数
  • args -- 要使用中间件的可选位置参数

  • kwargs -- 用于中间件的可选关键字arg

返回

应用中间件的部分功能

property url_prefix

检索当前蓝图组使用的URL前缀:返回:带URL前缀的字符串

sanic.config模块

class sanic.config.Config(defaults=None, load_env=True, keep_alive=None)

基类:dict

from_envvar(variable_name: str) → bool

从指向配置文件的环境变量加载配置。

参数

variable_name -- 环境变量的名称

返回

布尔。 True 如果能够加载配置, False 否则。

from_object(obj: Any) → None

更新给定对象的值。对象通常是模块或类。

只有该对象中的大写变量存储在配置中。示例用法:

from yourapplication import default_config
app.config.from_object(default_config)

or also:
app.config.from_object('myproject.config.MyConfigClass')

不应使用此函数加载实际配置,而应使用配置默认值。实际配置应加载 from_pyfile() 最好是从不在包内的位置安装,因为包可能在系统范围内安装。

参数

obj -- 保存配置的对象

from_pyfile(filename: str) → bool

从python文件更新配置中的值。只有该模块中的大写变量存储在配置中。

参数

filename -- 配置文件的绝对路径

load_environment_vars(prefix='SANIC_')

查找前缀环境变量并将其应用于配置(如果存在)。

update_config(config: Union[bytes, str, dict, Any])

更新应用程序配置.

注:仅考虑大写设置。

您可以通过提供py文件保存设置的路径来上载应用程序配置。

#/some/py/文件A=1b=2

config.update_配置(“${some}/py/file”)

可以,您可以将环境变量放在这里,但必须以以下格式提供它们:${some_env_var},并将$some_env_var标记为纯字符串。

您可以通过提供dict保持设置来上载应用程序配置。

d={“A”:1,“B”:2}config.update_配置(四)

您可以通过提供任何保存设置的对象来上载应用程序配置,但在这种情况下 config.__dict__ 将用作dict保持设置。

C类:

A=1乙=2

config.update_配置(三)

sanic.constants模块

sanic.cookies模块

class sanic.cookies.Cookie(key, value)

基类:dict

从simplecookie gottagofast中删去的莫尔斯电码

encode(encoding)

按照开发人员指示的特定编码类型对cookie内容进行编码。利用 str.encode() 方法由python提供。

此方法可用于编码和嵌入 utf-8 内容到cookies中。

参数

encoding -- 与cookie一起使用的编码

返回

在选择的编解码器中编码的cookie。

除了

UnicodeEncodeError

class sanic.cookies.CookieJar(headers)

基类:dict

当添加和删除cookie时,cookiejar会动态地写入头,通过使用multiHeader类提供一个唯一的键来编码设置cookie,从而绕过了每个名称一个头的限制。

sanic.exceptions模块

exception sanic.exceptions.ContentRangeError(message, content_range)

基类:sanic.exceptions.SanicException

quiet = True
status_code = 416
exception sanic.exceptions.FileNotFound(message, path, relative_url)

基类:sanic.exceptions.NotFound

exception sanic.exceptions.Forbidden(message, status_code=None, quiet=None)

基类:sanic.exceptions.SanicException

quiet = True
status_code = 403
exception sanic.exceptions.HeaderExpectationFailed(message, status_code=None, quiet=None)

基类:sanic.exceptions.SanicException

quiet = True
status_code = 417
exception sanic.exceptions.HeaderNotFound(message, status_code=None, quiet=None)

基类:sanic.exceptions.InvalidUsage

exception sanic.exceptions.InvalidRangeType(message, content_range)

基类:sanic.exceptions.ContentRangeError

exception sanic.exceptions.InvalidUsage(message, status_code=None, quiet=None)

基类:sanic.exceptions.SanicException

quiet = True
status_code = 400
exception sanic.exceptions.LoadFileException(message, status_code=None, quiet=None)

基类:sanic.exceptions.SanicException

exception sanic.exceptions.MethodNotSupported(message, method, allowed_methods)

基类:sanic.exceptions.SanicException

quiet = True
status_code = 405
exception sanic.exceptions.NotFound(message, status_code=None, quiet=None)

基类:sanic.exceptions.SanicException

quiet = True
status_code = 404
exception sanic.exceptions.PayloadTooLarge(message, status_code=None, quiet=None)

基类:sanic.exceptions.SanicException

quiet = True
status_code = 413
exception sanic.exceptions.PyFileError(file)

基类:Exception

exception sanic.exceptions.RequestTimeout(message, status_code=None, quiet=None)

基类:sanic.exceptions.SanicException

Web服务器(运行网站)认为在1)客户端和服务器之间建立IP连接(套接字)和2)在该套接字上接收到任何数据之间的时间间隔太长,因此服务器已断开连接。套接字连接实际上已丢失-Web服务器已在该特定套接字连接上“超时”。

quiet = True
status_code = 408
exception sanic.exceptions.SanicException(message, status_code=None, quiet=None)

基类:Exception

exception sanic.exceptions.ServerError(message, status_code=None, quiet=None)

基类:sanic.exceptions.SanicException

status_code = 500
exception sanic.exceptions.ServiceUnavailable(message, status_code=None, quiet=None)

基类:sanic.exceptions.SanicException

服务器当前不可用(因为它因维护而过载或停机)。一般来说,这是一种临时状态。

quiet = True
status_code = 503
exception sanic.exceptions.URLBuildError(message, status_code=None, quiet=None)

基类:sanic.exceptions.ServerError

exception sanic.exceptions.Unauthorized(message, status_code=None, scheme=None, **kwargs)

基类:sanic.exceptions.SanicException

未经授权的异常(401 HTTP状态代码)。

参数
  • message -- 描述异常的消息。

  • status_code -- HTTP状态代码。

  • scheme -- 要使用的身份验证方案的名称。

当存在时,Kwargs用于完成WWW身份验证头。

实例:

# With a Basic auth-scheme, realm MUST be present:
raise Unauthorized("Auth required.",
                   scheme="Basic",
                   realm="Restricted Area")

# With a Digest auth-scheme, things are a bit more complicated:
raise Unauthorized("Auth required.",
                   scheme="Digest",
                   realm="Restricted Area",
                   qop="auth, auth-int",
                   algorithm="MD5",
                   nonce="abcdef",
                   opaque="zyxwvu")

# With a Bearer auth-scheme, realm is optional so you can write:
raise Unauthorized("Auth required.", scheme="Bearer")

# or, if you want to specify the realm:
raise Unauthorized("Auth required.",
                   scheme="Bearer",
                   realm="Restricted Area")
quiet = True
status_code = 401
sanic.exceptions.abort(status_code, message=None)

基于SaniceException引发异常。返回适用于给定状态代码的HTTP响应消息,除非提供。

参数
  • status_code -- 要返回的HTTP状态代码。

  • message -- HTTP响应主体。默认为给定状态代码的response.py中的消息。

sanic.exceptions.add_status_code(code, quiet=None)

用于将异常添加到 SanicException .

sanic.handlers模块

class sanic.handlers.ContentRangeHandler(request, stats)

基类:object

解析和处理传入请求头以提取内容范围信息的机制。

参数
  • request (sanic.request.Request) -- 传入API请求

  • stats (posix.stat_result) -- 与内容相关的统计信息

变量
end
headers
size
start
total
class sanic.handlers.ErrorHandler

基类:object

提供 sanic.app.Sanic 具有处理和处理任何和所有未捕获异常的机制的应用程序,其方式由应用程序开发人员设置。

这个错误处理框架内置在核心中,开发人员可以对其进行扩展,以执行各种任务,从记录错误状态到将其报告给可用于实时警报系统的外部服务。

add(exception, handler)

向已存在的处理程序对象添加新的异常处理程序。

参数
返回

没有

cached_handlers = None
default(request, exception)

为以下对象提供默认行为 ErrorHandler . 如果开发者选择 ErrorHandler 它们可以为这个方法提供一个自定义的实现,使其以他们认为合适的方式工作。

参数
返回

handlers = None
log(message, level='error')

已弃用,请勿使用。

lookup(exception)

查找的现有实例 ErrorHandler 并获取特定类型异常的注册处理程序。

此方法利用dict查找加快检索过程。

参数

exception (sanic.exceptions.SanicException or Exception) -- 异常类型

返回

已注册函数(如果找到) None 否则

response(request, exception)

获取并执行异常处理程序并返回响应对象

参数
返回

包装从中获取的返回值 default() 或为该异常类型注册的处理程序。

sanic.log模块

sanic.请求模块

class sanic.request.File(type, body, name)

基类:tuple

property body

字段编号1的别名

property name

字段编号2的别名

property type

字段编号0的别名

class sanic.request.Request(url_bytes, headers, version, method, transport, app)

基类:object

HTTP请求的属性,如URL、头等。

app
property args

解析方法 query_string 使用 urllib.parse.parse_qs . 此方法用于 args 财产。如果需要更改默认参数,可以直接使用。

参数
  • keep_blank_values (bool) -- 指示百分比编码查询中的空值是否应视为空字符串的标志。真值表示空白应保留为空白字符串。默认的false值表示将忽略空白值,并将其视为未包含。

  • strict_parsing (bool) -- 指示如何处理分析错误的标志。如果为false(默认值),则默认忽略错误。如果为true,则错误会引发ValueError异常。

  • encoding (str) -- 指定如何将百分比编码序列解码为Unicode字符(bytes.decode()方法接受)。

  • errors (str) -- 指定如何将百分比编码序列解码为Unicode字符(bytes.decode()方法接受)。

返回

RequestParameters

body
body_finish()

20.3 版后已移除.

body_init()

20.3 版后已移除.

body_push(data)

20.3 版后已移除.

conn_info
property content_type
property cookies
ctx
endpoint
property files
property form
property forwarded

从请求头获取的活动代理信息,如Sanic配置中指定的。

字段名按、for、proto、host、port和path进行规范化。-for和by IPv6地址用括号括起来-端口(int)只由端口头设置,而不是从主机设置。-路径是未编码的url

新样式转发邮件头中可能会提供其他值。

get_args(keep_blank_values: bool = False, strict_parsing: bool = False, encoding: str = 'utf-8', errors: str = 'replace')sanic.request.RequestParameters

解析方法 query_string 使用 urllib.parse.parse_qs . 此方法用于 args 财产。如果需要更改默认参数,可以直接使用。

参数
  • keep_blank_values (bool) -- 指示百分比编码查询中的空值是否应视为空字符串的标志。真值表示空白应保留为空白字符串。默认的false值表示将忽略空白值,并将其视为未包含。

  • strict_parsing (bool) -- 指示如何处理分析错误的标志。如果为false(默认值),则默认忽略错误。如果为true,则错误会引发ValueError异常。

  • encoding (str) -- 指定如何将百分比编码序列解码为Unicode字符(bytes.decode()方法接受)。

  • errors (str) -- 指定如何将百分比编码序列解码为Unicode字符(bytes.decode()方法接受)。

返回

RequestParameters

get_query_args(keep_blank_values: bool = False, strict_parsing: bool = False, encoding: str = 'utf-8', errors: str = 'replace') → list

解析方法 query_string 使用 urllib.parse.parse_qsl . 此方法用于 query_args 财产。如果需要更改默认参数,可以直接使用。

参数
  • keep_blank_values (bool) -- 指示百分比编码查询中的空值是否应视为空字符串的标志。真值表示空白应保留为空白字符串。默认的false值表示将忽略空白值,并将其视为未包含。

  • strict_parsing (bool) -- 指示如何处理分析错误的标志。如果为false(默认值),则默认忽略错误。如果为true,则错误会引发ValueError异常。

  • encoding (str) -- 指定如何将百分比编码序列解码为Unicode字符(bytes.decode()方法接受)。

  • errors (str) -- 指定如何将百分比编码序列解码为Unicode字符(bytes.decode()方法接受)。

返回

列表

headers
property host

当前有效的服务器“host”(主机名或主机名:端口). 1 config.SERVER_NAME 覆盖任何客户端标头2。原始请求3的代理主机。请求主机头主机名和端口可以用 sanic.headers.parse_host(request.host) . :return:找到第一个匹配的主机,或空字符串

property ip
返回

套接字的对等IP

property json
load_json(loads=<built-in function loads>)
property match_info

解析路由后返回匹配信息

method
parsed_args
parsed_files
parsed_form
parsed_forwarded
parsed_json
parsed_not_grouped_args
property path

本地HTTP请求的路径。

property port
返回

套接字的对等端口

property query_args

解析方法 query_string 使用 urllib.parse.parse_qsl . 此方法用于 query_args 财产。如果需要更改默认参数,可以直接使用。

参数
  • keep_blank_values (bool) -- 指示百分比编码查询中的空值是否应视为空字符串的标志。真值表示空白应保留为空白字符串。默认的false值表示将忽略空白值,并将其视为未包含。

  • strict_parsing (bool) -- 指示如何处理分析错误的标志。如果为false(默认值),则默认忽略错误。如果为true,则错误会引发ValueError异常。

  • encoding (str) -- 指定如何将百分比编码序列解码为Unicode字符(bytes.decode()方法接受)。

  • errors (str) -- 指定如何将百分比编码序列解码为Unicode字符(bytes.decode()方法接受)。

返回

列表

property query_string
raw_url
async receive_body()

接收请求.正文,如果尚未收到。

流处理程序可以调用此函数来接收整个正文。

这是在sanic20.3中添加的一个兼容性填充程序,因为Sanic的未来版本将使所有请求流化,并将使用此函数来代替非异步body_init/push/finish函数。

如果您的代码依赖于旧功能并且无法升级到新的API,请提出问题。

property remote_addr

客户端IP地址(如果可用)。1代理远程地址 self.forwarded['for'] 2本地远程地址 self.ip :return:IPv4、括号内的IPv6、UNIX套接字名称或任意字符串

property scheme

确定请求方案。1 config.SERVER_NAME 如果是完整的URL格式2。代理原型/方案3。本地连接协议:返回:http |https| ws wss或头文件给出的任意值。

property server_name

客户端连接到的主机名,通过 request.host .

property server_path

当前URL的完整路径。使用代理路径或本地路径。

property server_port

客户端连接到的端口,通过转发 portrequest.host .

默认端口返回为80和443,基于 request.scheme .

property socket
stream
property token

尝试返回auth头标记。

返回

与请求相关的令牌

transport
uri_template
property url
url_for(view_name, **kwargs)

等同于 sanic.Sanic.url_for() ,但自动确定 scheme and netloc base on the request. Since this method is aiming to generate correct schema & netloc, `_ 暗示为“external”。

参数

kwargs -- 采用与中相同的参数 sanic.Sanic.url_for()

返回

给定视图的绝对URL

返回类型

str

version
class sanic.request.RequestParameters

基类:dict

托管一个以列表为值的dict,其中get返回列表的第一个值,get list返回整个shebang

get(name, default=None)

返回第一个值,默认值或实际值

getlist(name, default=None)

返回整个列表

class sanic.request.StreamBuffer(buffer_size=100)

基类:object

property buffer_size
is_full()
async put(payload)
async read()

无内容时停止阅读

sanic.request.parse_multipart_form(body, boundary)

解析请求体并返回字段和文件

参数
  • body -- 字节请求正文

  • boundary -- 字节多部分边界

返回

字段(请求参数)、文件(请求参数)

sanic.response模块

class sanic.response.BaseHTTPResponse

基类:object

property cookies
get_headers(version='1.1', keep_alive=False, keep_alive_timeout=None, body=b'')

20.3: 版后已移除.

此函数不是公共API,将被删除。

class sanic.response.HTTPResponse(body=None, status=200, headers=None, content_type=None, body_bytes=b'')

基类:sanic.response.BaseHTTPResponse

body
content_type
property cookies
headers
output(version='1.1', keep_alive=False, keep_alive_timeout=None)
status
class sanic.response.StreamingHTTPResponse(streaming_fn, status=200, headers=None, content_type='text/plain; charset=utf-8', chunked=True)

基类:sanic.response.BaseHTTPResponse

chunked
content_type
get_headers(version='1.1', keep_alive=False, keep_alive_timeout=None)

20.3: 版后已移除.

此函数不是公共API,将被删除。

headers
protocol
status
async stream(version='1.1', keep_alive=False, keep_alive_timeout=None)

流头,运行 streaming_fn 将内容写入响应正文,然后完成响应正文的回调。

streaming_fn
async write(data)

将数据块写入流响应。

参数

data -- 要写入的str或bytes-ish数据。

sanic.response.empty(status=204, headers=None)

向客户端返回空响应。

:param status响应代码。:param headers自定义头。

async sanic.response.file(location, status=200, mime_type=None, headers=None, filename=None, _range=None)

返回包含文件数据的响应对象。

参数
  • location -- 文件在系统上的位置。

  • mime_type -- 特定的mime_类型。

  • headers -- 自定义标题。

  • filename -- 覆盖文件名。

  • _range --

async sanic.response.file_stream(location, status=200, chunk_size=4096, mime_type=None, headers=None, filename=None, chunked=True, _range=None)

返回带有文件数据的流响应对象。

参数
  • location -- 文件在系统上的位置。

  • chunk_size -- 流中每个块的大小(字节)

  • mime_type -- 特定的mime_类型。

  • headers -- 自定义标题。

  • filename -- 覆盖文件名。

  • chunked -- 启用或禁用分块传输编码

  • _range --

sanic.response.html(body, status=200, headers=None)

返回具有HTML格式的正文的响应对象。

参数
  • body -- str或bytes-ish,或具有 __html__ 或 _repr_html_.

  • status -- 响应代码。

  • headers -- 自定义标题。

sanic.response.json(body, status=200, headers=None, content_type='application/json', dumps=<built-in function dumps>, **kwargs)

返回主体为JSON格式的响应对象。

参数
  • body -- 要序列化的响应数据。

  • status -- 响应代码。

  • headers -- 自定义标题。

  • kwargs -- 传递给JSON编码器的其余参数。

sanic.response.raw(body, status=200, headers=None, content_type='application/octet-stream')

返回不编码正文的响应对象。

参数
  • body -- 响应数据。

  • status -- 响应代码。

  • headers -- 自定义标题。

  • content_type -- 响应的内容类型(字符串)。

sanic.response.redirect(to, headers=None, status=302, content_type='text/html; charset=utf-8')

中止执行并导致302重定向(默认情况下)。

参数
  • to -- 要重定向到的路径或完全限定的URL

  • headers -- 要包含在新请求中的头的可选dict

  • status -- 新请求的状态代码(int),默认为302

  • content_type -- 响应的内容类型(字符串)

返回

重定向响应

sanic.response.stream(streaming_fn, status=200, headers=None, content_type='text/plain; charset=utf-8', chunked=True)

接受连体衣 streaming_fn 可用于将块写入流响应。返回A StreamingHTTPResponse .

示例用法:

@app.route("/")
async def index(request):
    async def streaming_fn(response):
        await response.write('foo')
        await response.write('bar')

    return stream(streaming_fn, content_type='text/plain')
参数
  • streaming_fn -- 协同程序接受响应并将内容写入该响应。

  • mime_type -- 特定的mime_类型。

  • headers -- 自定义标题。

  • chunked -- 启用或禁用分块传输编码

sanic.response.text(body, status=200, headers=None, content_type='text/plain; charset=utf-8')

返回正文为文本格式的响应对象。

参数
  • body -- 要编码的响应数据。

  • status -- 响应代码。

  • headers -- 自定义标题。

  • content_type -- 响应的内容类型(字符串)

sanic.路由器模块

class sanic.router.Parameter(name, cast)

基类:tuple

property cast

字段编号1的别名

property name

字段编号0的别名

exception sanic.router.ParameterNameConflicts

基类:Exception

class sanic.router.Route(handler, methods, pattern, parameters, name, uri)

基类:tuple

property handler

字段编号0的别名

property methods

字段编号1的别名

property name

字段编号4的别名

property parameters

字段编号3的别名

property pattern

字段编号2的别名

property uri

字段5的别名

exception sanic.router.RouteDoesNotExist

基类:Exception

exception sanic.router.RouteExists

基类:Exception

class sanic.router.Router

基类:object

路由器支持带参数和方法检查的基本路由

用途:

@sanic.route('/my/url/<my_param>', methods=['GET', 'POST', ...])
def my_route(request, my_param):
    do stuff...

@sanic.route('/my/url/<my_param:my_type>', methods['GET', 'POST', ...])
def my_route_with_type(request, my_param: my_type):
    do stuff...

参数将作为关键字参数传递给请求处理函数。提供的参数也可以通过将:type附加到<parameter>来具有类型。给定的参数必须能够类型化。如果未提供类型,则应提供字符串。正则表达式也可以作为类型传入。为函数提供的参数将始终是一个字符串,与类型无关。

add(uri, methods, handler, host=None, strict_slashes=False, version=None, name=None)

将处理程序添加到路由列表

参数
  • uri -- 匹配路径

  • methods -- 接受方法名称的序列。如果没有提供,则允许使用任何方法

  • handler -- 请求处理程序函数。执行时,它应该提供一个响应对象。

  • strict_slashes -- 严格到尾随斜线

  • version -- 路线或蓝图的当前版本。更多详细信息,请参阅文档。

返回

没有什么

static check_dynamic_route_exists(pattern, routes_to_check, parameters)

根据URL模式和参数的比较,检查所提供的路由列表中是否存在URL模式。

参数
  • pattern -- URL参数模式

  • routes_to_check -- 动态路由列表,可哈希路由或不可哈希路由。

  • parameters -- 名单 Parameter 项目

返回

如果存在匹配路由,则为索引和路由的元组;其他-1表示索引,无表示路由

find_route_by_view_name(view_name, name=None)

根据指定的视图名称在路由器中查找路由。

参数
  • view_name -- 要搜索的视图名称字符串

  • kwargs -- 附加参数,通常用于静态文件

返回

包含(uri,route)的元组

get(request)

根据请求的URL获取请求处理程序,或引发错误

参数

request -- 请求对象

返回

处理程序、参数、关键字参数

get_supported_methods(url)

获取URL和可选主机的支持方法列表。

参数

url -- URL字符串(包括主机)

返回

支持方法的冻结集

is_stream_handler(request)

请求的处理程序是否为流。:param请求:请求对象:返回:bool

parameter_pattern = re.compile('<(.+?)>')
classmethod parse_parameter_string(parameter_string)

将参数字符串解析为其组成名称、类型和模式

例如::

parse_parameter_string('<param_one:[A-z]>')` ->
    ('param_one', str, '[A-z]')
参数

parameter_string -- 解析字符串

返回

包含的元组(参数_name、参数_type、参数_pattern)

routes_always_check = None
routes_dynamic = None
routes_static = None
sanic.router.url_hash(url)

sanic.server模块

class sanic.server.AsyncioServer(loop, serve_coro, connections, after_start, before_stop, after_stop)

基类:object

使用可能对需要手动管理服务器生命周期的用户有用的功能包装异步服务器。

after_start()

触发“服务器启动后”事件

after_stop()

触发“服务器停止后”事件

before_stop()

触发“服务器停止前”事件

close()
connections
is_serving()
loop
serve_coro
serve_forever()
server
start_serving()
wait_closed()
class sanic.server.ConnInfo(transport, unix=None)

基类:object

本地和远程地址以及SSL状态信息。

client
client_port
peername
server
server_port
sockname
ssl
class sanic.server.HttpProtocol(*, loop, app, signal=<sanic.server.Signal object>, connections=None, state=None, unix=None, **kwargs)

基类:asyncio.protocols.Protocol

此类提供SANIC框架的基本HTTP实现。

access_log
app
bail_out(message, from_error=False)

如果传输管道关闭,并且SANIC应用程序在向传输管道写入数据时遇到错误,我们会记录错误并提供适当的详细信息。

参数
  • message (str) -- 要显示的错误消息

  • from_error (bool) -- 如果在处理异常情况时调用了纾困。

返回

没有

async body_append(body)
cleanup()

当使用keepalive特性时调用此函数,它将重置连接,以便能够处理在同一连接上接收另一个请求。

close()

强制关闭连接。

close_if_idle()

如果没有发送或接收请求,请关闭连接

返回

布尔值-关闭时为真,保持打开时为假

conn_info
connection_lost(exc)

当连接丢失或关闭时调用。

参数是一个异常对象或无(后者意味着接收到一个常规的EOF,或者连接被中止或关闭)。

connection_made(transport)

在建立连接时调用。

参数是表示管道连接的传输。要接收数据,请等待data_received()调用。当连接关闭时,将调用连接丢失()。

connections
data_received(data)

当接收到某些数据时调用。

参数是一个字节对象。

async drain()
error_handler
execute_request_handler()

调用由 sanic.app.Sanic.handle_request() 方法

返回

没有

expect_handler()

Expect头的处理程序。

headers
is_request_stream
property keep_alive

检查连接是否需要根据附加到 _keep_alive 属性, Signal.stoppedHttpProtocol.parser.should_keep_alive()

返回

True 如果要保持连接活动 False 其他的

keep_alive_timeout
keep_alive_timeout_callback()

检查自上次响应以来经过的时间是否超过了我们配置的最大保持活动超时值,如果超过,请关闭传输管道,让响应编写器处理错误。

返回

没有

log_response(response)

提供了帮助器方法,以便在 HttpProtocol.access_log 启用。

参数

response (sanic.response.HTTPResponse or sanic.response.StreamingHTTPResponse) -- 为当前请求生成的响应

返回

没有

loop
on_body(body)
on_header(name, value)
on_headers_complete()
on_message_complete()
on_url(url)
parser
pause_writing()

当传输的缓冲区超过高水位线时调用。

pause和resume调用是成对的——当缓冲区严格超过高位标记时(即使后续写入会使缓冲区大小增加更多),调用pause_writing()一次,当缓冲区大小达到低位标记时,调用resume_writing()一次。

请注意,如果缓冲区大小等于高位标记,则不会调用pause_writing()——必须严格执行。相反,当缓冲区大小等于或小于低水位线时,将调用resume_writing()。这些结束条件对于确保当任何一个标记为零时事情按预期进行都很重要。

注意:这是唯一一个没有通过eventloop.call_Soon()调用的协议回调——如果是,它在最需要的时候不会有任何效果(当应用在调用pause_writing()之前一直在写而不屈服)。

async push_data(data)
request
request_buffer_queue_size
request_class
request_handler
request_max_size
request_timeout
request_timeout_callback()
response_timeout
response_timeout_callback()
resume_writing()

当传输的缓冲区低于低水位线时调用。

有关详细信息,请参阅pause_writing()。

signal
state
async stream_append()
async stream_response(response)

异步将响应流传输到客户端。将传输附加到响应,以便响应使用者可以根据需要写入响应。

transport
url
write_error(exception)
write_response(response)

将响应内容同步写入传输。

class sanic.server.Signal

基类:object

stopped = False
sanic.server.bind_socket(host: str, port: int, *, backlog=100) → socket.socket

创建TCP服务器套接字。:param host:可以指定IPv4、IPv6或主机名:param port:TCP端口号:param backlog:到队列的最大连接数:return:插座.插座对象

sanic.server.bind_unix_socket(path: str, *, mode=438, backlog=100) → socket.socket

创建unix套接字。:param path:文件系统路径:param backlog:到队列的最大连接数:返回:插座.插座对象

sanic.server.remove_unix_socket(path: str) → None

在服务器退出期间删除死机unix套接字。

sanic.server.serve(host, port, app, before_start=None, after_start=None, before_stop=None, after_stop=None, ssl=None, sock=None, unix=None, reuse_port=False, loop=None, protocol=<class 'sanic.server.HttpProtocol'>, backlog=100, register_sys_signals=True, run_multiple=False, run_async=False, connections=None, signal=<sanic.server.Signal object>, state=None, asyncio_server_kwargs=None)

在单个进程上启动异步HTTP服务器。

参数
  • host -- 主机地址

  • port -- 端口到主机上

  • before_start -- 要在服务器开始侦听之前执行的函数。采取论点 app 实例和 loop

  • after_start -- 服务器开始侦听后要执行的函数。接受参数 app 实例和 loop

  • before_stop -- 在执行停止信号之前接收到停止信号时要执行的功能。采取论点 app 实例和 loop

  • after_stop -- 在收到停止信号后执行的功能。采取论点 app 实例和 loop

  • ssl -- SSLContext

  • sock -- 服务器接受连接的套接字

  • unix -- 要监听的Unix套接字而不是TCP端口

  • reuse_port -- True 对于多个工人

  • loop -- 异步兼容事件循环

  • run_async -- bool:不要为服务器创建新的事件循环,并返回一个AsyncServer对象,而不是运行它

  • asyncio_server_kwargs -- asyncio/uvloop create_server方法的键值参数

返回

没有什么

sanic.server.serve_multiple(server_settings, workers)

同时启动多个服务器进程。在中断和终止信号时停止,并在完成时排出连接。

参数
  • server_settings -- 要传递给serve函数的kw参数

  • workers -- 要启动的工人数

  • stop_event -- 如果提供,用作停止信号

返回

sanic.server.trigger_events(events, loop)

触发器事件回调(函数或异步)

参数
  • events -- 要执行的一个或多个同步或异步函数

  • loop -- 事件循环

静态模块

sanic.static.register(app, uri, file_or_directory, pattern, use_modified_since, use_content_range, stream_large_files, name='static', host=None, strict_slashes=None, content_type=None)

通过向路由器添加路由并注册处理程序,向SANIC注册静态目录处理程序。

参数
  • app -- Sanic

  • file_or_directory -- 提供服务的文件或目录路径

  • uri -- 提供服务的URL

  • pattern -- 用于匹配URL中文件的正则表达式

  • use_modified_since -- 如果为真,则发送文件修改时间,如果浏览器与服务器匹配,则返回“未修改”。

  • use_content_range -- 如果为真,则处理范围请求的头并发送请求的文件部分

  • stream_large_files -- 如果为真,则使用文件流()处理程序而不是文件()处理程序发送文件。如果这是一个整数,则表示要切换到文件流()的阈值大小。

  • name -- 用于URL的用户定义名称

  • content_type -- 标题的用户定义内容类型

sanic.测试模块

class sanic.testing.SanicASGITestClient(app, base_url: str = 'http://mockserver:1234', suppress_exceptions: bool = False)

基类:httpx.AsyncClient

async request(method, url, gather_request=True, *args, **kwargs)

生成并发送请求。

相当于:

`python request = client.build_request(...) response = await client.send(request, ...) `

AsyncClient.build_request()AsyncClient.send() 和 [配置合并] [0] 了解如何将各种参数与客户端级配置合并。

[0] :/advanced/#配置合并

async websocket(uri, subprotocols=None, *args, **kwargs)
class sanic.testing.SanicTestClient(app, port=None, host='127.0.0.1')

基类:object

delete(*args, **kwargs)
get(*args, **kwargs)
get_new_session()
head(*args, **kwargs)
options(*args, **kwargs)
patch(*args, **kwargs)
post(*args, **kwargs)
put(*args, **kwargs)
websocket(*args, **kwargs)
class sanic.testing.TestASGIApp

基类:sanic.asgi.ASGIApp

do_stream: bool
lifespan: sanic.asgi.Lifespan
request: sanic.request.Request
sanic_app: sanic.app.Sanic
transport: sanic.asgi.MockTransport
ws: Optional[sanic.websocket.WebSocketConnection]
async sanic.testing.app_call_with_return(self, scope, receive, send)

sanic.views模块

class sanic.views.CompositionView

基类:object

SANIC的简单方法函数映射视图。您可以为您想要支持的每个HTTP方法向方法(get、post、put、patch、delete)添加处理程序函数。

例如:

view=compositionview()视图。添加( [“得到”] ,lambda请求:text(“I am get method”))视图。添加( [“邮”、“放”] ,lambda请求:text(“我是post/put方法”))

等。

如果有人试图使用一个未实现的方法,将会有405个响应。

add(methods, handler, stream=False)
class sanic.views.HTTPMethodView

基类:object

SANIC视图的简单基于类的实现。您应该为您想要支持的每个HTTP方法实现类的方法(get、post、put、patch、delete)。

例如:

class DummyView(HTTPMethodView):
    def get(self, request, *args, **kwargs):
        return text('I am get method')
    def put(self, request, *args, **kwargs):
        return text('I am put method')

等。

如果有人试图使用一个未实现的方法,将会有405个响应。

如果需要任何URL参数,只需在方法定义中提到它们:

class DummyView(HTTPMethodView):
    def get(self, request, my_param_here, *args, **kwargs):
        return text('I am get method with %s' % my_param_here)
要将视图添加到路由中,可以使用
  1. app.add_route(dummyview.as_view(),'/')

  2. app.route(“/”)(dummyView.as_View())

要添加任何decorator,可以将其设置为decorators变量

classmethod as_view(*class_args, **class_kwargs)

用于路由系统的返回视图函数,该函数将请求发送到适当的处理程序方法。

decorators: List[Callable[[Callable[[...], Any]], Callable[[...], Any]]] = []
dispatch_request(request, *args, **kwargs)
sanic.views.stream(func)

sanic.websocket模块

exception sanic.websocket.ConnectionClosed(code: int, reason: str)

基类:websockets.exceptions.WebSocketException

尝试与关闭的连接交互时引发。

在其中提供连接关闭代码和原因 codereason 属性。

class sanic.websocket.WebSocketConnection(send: Callable[[MutableMapping[str, Any]], Awaitable[None]], receive: Callable[], Awaitable[MutableMapping[str, Any]]], subprotocols: Optional[List[str]] = None)

基类:object

async accept() → None
async close() → None
async receive(*args, **kwargs) → Optional[str]
async recv(*args, **kwargs) → Optional[str]
async send(data: Union[str, bytes], *args, **kwargs) → None
class sanic.websocket.WebSocketProtocol(*args, websocket_timeout=10, websocket_max_size=None, websocket_max_queue=None, websocket_read_limit=65536, websocket_write_limit=65536, websocket_ping_interval=20, websocket_ping_timeout=20, **kwargs)

基类:sanic.server.HttpProtocol

access_log
app
conn_info
connection_lost(exc)

当连接丢失或关闭时调用。

参数是一个异常对象或无(后者意味着接收到一个常规的EOF,或者连接被中止或关闭)。

connections
data_received(data)

当接收到某些数据时调用。

参数是一个字节对象。

error_handler
headers
is_request_stream
keep_alive_timeout
keep_alive_timeout_callback()

检查自上次响应以来经过的时间是否超过了我们配置的最大保持活动超时值,如果超过,请关闭传输管道,让响应编写器处理错误。

返回

没有

loop
parser
request
request_buffer_queue_size
request_class
request_handler
request_max_size
request_timeout
request_timeout_callback()
response_timeout
response_timeout_callback()
signal
state
transport
url
async websocket_handshake(request, subprotocols=None)
write_response(response)

将响应内容同步写入传输。

sanic.worker模块

模块内容

class sanic.Blueprint(name, url_prefix=None, host=None, version=None, strict_slashes=None)

基类:object

add_route(handler, uri, methods=frozenset({'GET'}), host=None, strict_slashes=None, version=None, name=None, stream=False)

从函数创建蓝图路由。

参数
  • handler -- 用于处理URI请求的函数。接受带有视图类方法的函数或类实例。

  • uri -- 路由可访问的终结点。

  • methods -- 可接受的HTTP方法列表。

  • host -- 要使用的SANIC服务器的FQDN的IP地址。

  • strict_slashes -- 强制通过培训请求API URL /

  • version -- 蓝图版本

  • name -- URL的用户定义路由名称

  • stream -- 布尔值,指定处理程序是否为流处理程序

返回

函数或类实例

add_websocket_route(handler, uri, host=None, version=None, name=None)

从函数创建蓝图WebSocket路由。

参数
  • handler -- 用于处理URI请求的函数。接受带有视图类方法的函数或类实例。

  • uri -- 路由可访问的终结点。

  • host -- 要使用的SANIC服务器的FQDN的IP地址。

  • version -- 蓝图版本

  • name -- 用于标识WebSocket路由的唯一名称

返回

函数或类实例

delete(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL DELETE HTTP 方法

参数
  • uri -- 要标记到的URL DELETE 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

exception(*args, **kwargs)

此方法允许为有问题的当前蓝图创建全局异常处理程序。

参数
  • args -- 处理程序要捕获的python异常列表

  • kwargs -- 要传递给异常处理程序的其他可选参数

:返回修饰方法以处理任何

在此蓝图下注册的路线。

get(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL GET HTTP 方法

参数
  • uri -- 要标记到的URL GET 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

static group(*blueprints, url_prefix='')

创建一个蓝图列表,可以选择在通用URL前缀下对其进行分组。

参数
  • blueprints -- 要注册为组的蓝图

  • url_prefix -- 所有子前缀的URL路由

head(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL HEAD HTTP 方法

参数
  • uri -- 要标记到的URL HEAD 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

listener(event)

从修饰函数创建侦听器。

参数

event -- 要收听的事件。

middleware(*args, **kwargs)

从修饰函数创建蓝图中间件。

参数
  • args -- 调用中间件时要使用的位置参数

  • kwargs -- 可用于中间件的可选关键字参数。

options(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL OPTIONS HTTP 方法

参数
  • uri -- 要标记到的URL OPTIONS 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

patch(uri, host=None, strict_slashes=None, stream=False, version=None, name=None)

在下添加API URL PATCH HTTP 方法

参数
  • uri -- 要标记到的URL PATCH 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

post(uri, host=None, strict_slashes=None, stream=False, version=None, name=None)

在下添加API URL POST HTTP 方法

参数
  • uri -- 要标记到的URL POST 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

put(uri, host=None, strict_slashes=None, stream=False, version=None, name=None)

在下添加API URL PUT HTTP 方法

参数
  • uri -- 要标记到的URL PUT 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 sanic.app.Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

register(app, options)

将蓝图注册到sanic应用程序。

参数
  • app -- 实例 sanic.app.Sanic

  • options -- 将蓝图注册到应用程序时要使用的选项。 url_prefix -覆盖蓝图前缀的URL前缀

route(uri, methods=frozenset({'GET'}), host=None, strict_slashes=None, stream=False, version=None, name=None)

从修饰函数创建蓝图路由。

参数
  • uri -- 路由可访问的终结点。

  • methods -- 可接受的HTTP方法列表。

  • host -- 要使用的SANIC服务器的FQDN的IP地址。

  • strict_slashes -- 强制通过培训请求API URL /

  • stream -- 如果路由应该提供流支持

  • version -- 蓝图版本

  • name -- 用于标识路由的唯一名称

:返回一个修饰方法,调用该方法时将返回一个对象

类型的 FutureRoute

static(uri, file_or_directory, *args, **kwargs)

从修饰函数创建蓝图静态路由。

参数
  • uri -- 路由可访问的终结点。

  • file_or_directory -- 静态资产。

websocket(uri, host=None, strict_slashes=None, version=None, name=None)

从修饰函数创建蓝图WebSocket路由。

参数
  • uri -- 路由可访问的终结点。

  • host -- 要使用的SANIC服务器的FQDN的IP地址。

  • strict_slashes -- 强制通过培训请求API URL /

  • version -- 蓝图版本

  • name -- 用于标识WebSocket路由的唯一名称

class sanic.Sanic(name=None, router=None, error_handler=None, load_env=True, request_class=None, strict_slashes=False, log_config=None, configure_logging=True)

基类:object

add_route(handler, uri, methods=frozenset({'GET'}), host=None, strict_slashes=None, version=None, name=None, stream=False)

将类实例或函数注册为应用程序URL路由的处理程序的帮助器方法。

参数
  • handler -- 函数或类实例

  • uri -- URL路径

  • methods -- 允许的方法列表或元组,如果使用httpmethodview,则会重写这些方法

  • host --

  • strict_slashes --

  • version --

  • name -- URL的用户定义路由名称

  • stream -- 布尔值,指定处理程序是否为流处理程序

返回

函数或类实例

add_task(task)

在循环开始后,安排任务稍后运行。与asyncio.secure-future不同的是,它也不会返回未来,实际的secure-future调用会延迟到服务器启动之前。

参数

task -- 未来、古鲁特或等待

add_websocket_route(handler, uri, host=None, strict_slashes=None, subprotocols=None, version=None, name=None)

将函数注册为WebSocket路由的帮助器方法。

参数
  • handler -- 可以处理WebSocket请求的类的可调用函数或实例

  • host -- 主机IP或FQDN详细信息

  • uri -- 将映射到websocket处理程序的URL路径

  • strict_slashes -- 如果API端点需要以“/”终止或不终止

  • subprotocols -- 用于WebSocket握手的子协议

  • name -- 为该URL分配的唯一名称,以便它可以与 url_for()

返回

反对者装饰者 websocket()

property asgi_client
blueprint(blueprint, **options)

在应用程序上注册蓝图。

参数
  • blueprint -- 蓝图对象或其(列表、元组)

  • options -- 带蓝图默认值的选项字典

返回

没有什么

converted_response_type(response)

未提供实现。

async create_server(host: Optional[str] = None, port: Optional[int] = None, *, debug: bool = False, ssl: Optional[Union[dict, ssl.SSLContext]] = None, sock: Optional[socket.socket] = None, protocol: Type[asyncio.protocols.Protocol] = None, backlog: int = 100, stop_event: Any = None, access_log: Optional[bool] = None, unix: Optional[str] = None, return_asyncio_server=False, asyncio_server_kwargs=None) → Optional[sanic.server.AsyncioServer]

的异步版本 run() .

此方法将负责调用 before_start 事件通过 trigger_events() 方法调用,然后启动 桑尼克 应用程序处于异步模式。

注解

这不支持多处理,并且不是运行 Sanic 应用。

参数
  • host (str) -- 主机地址

  • port (int) -- 端口到主机上

  • debug (bool) -- 启用调试输出(减慢服务器速度)

  • ssl (SSLContext or dict) -- sslcontext,或工作进程的ssl加密的证书和密钥的位置

  • sock (socket) -- 服务器接受连接的套接字

  • protocol (type[Protocol]) -- 异步协议类的子类

  • backlog (int) -- 在拒绝新连接之前,系统将允许的一些未被接受的连接

  • stop_event (None) -- 停止应用程序前要触发的事件-已弃用

  • access_log (bool) -- 允许写入访问日志(减慢服务器速度)

  • return_asyncio_server (bool) -- 定义是否需要返回asyncio.server或立即启动它的标志

  • asyncio_server_kwargs (dict) -- asyncio/uvloop create_server方法的键值参数

返回

asyncio server如果return_asyncio_server为true,则为空

delete(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL DELETE HTTP 方法

参数
  • uri -- 要标记到的URL DELETE 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

enable_websocket(enable=True)

启用或禁用对WebSocket的支持。

如果将WebSocket路由添加到应用程序,则会自动启用WebSocket。

exception(*exceptions)

修饰要注册为异常处理程序的函数

参数

exceptions -- 例外

返回

装饰功能

get(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL GET HTTP 方法

参数
  • uri -- 要标记到的URL GET 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

async handle_request(request, write_callback, stream_callback)

接受来自HTTP服务器的请求并返回要发送回的响应对象HTTP服务器只需要一个响应对象,因此必须在此处进行异常处理。

参数
  • request -- HTTP请求对象

  • write_callback -- 以响应作为唯一参数调用的同步响应函数

  • stream_callback -- 处理流式处理程序生成的流式ttpresponse的协程。

返回

没有什么

head(uri, host=None, strict_slashes=None, version=None, name=None)
listener(event)

从修饰函数创建侦听器。

参数

event -- 要收听的事件

property loop

与asyncio.get_event_loop()同义。

仅在使用时支持 app.run 方法。

middleware(middleware_or_request)

装饰和注册在请求之前调用的中间件。可以调用为 @app.middleware@应用中间件(请求)

Param

中间件请求:用于标识正在注册的中间件类型的可选参数。

options(uri, host=None, strict_slashes=None, version=None, name=None)

在下添加API URL OPTIONS HTTP 方法

参数
  • uri -- 要标记到的URL OPTIONS 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

patch(uri, host=None, strict_slashes=None, stream=False, version=None, name=None)

在下添加API URL PATCH HTTP 方法

参数
  • uri -- 要标记到的URL PATCH 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

post(uri, host=None, strict_slashes=None, stream=False, version=None, name=None)

在下添加API URL POST HTTP 方法

参数
  • uri -- 要标记到的URL POST 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

put(uri, host=None, strict_slashes=None, stream=False, version=None, name=None)

在下添加API URL PUT HTTP 方法

参数
  • uri -- 要标记到的URL PUT 方法 HTTP

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • version -- API版本

  • name -- 可用于标识路由的唯一名称

返回

具有 route() 方法 的对象装饰器

register_blueprint(*args, **kwargs)

为调用 blueprint() 方法

注解

在1.0中被弃用。使用 blueprint() 相反。

参数
  • args -- 蓝图对象或其(列表、元组)

  • kwargs -- 带蓝图默认值的选项字典

返回

没有

register_listener(listener, event)

注册给定事件的侦听器。

参数
  • listener -- 可调用,即设置数据库(应用程序,循环)

  • event -- 何时注册侦听器,即“在服务器启动之前”

返回

听众

register_middleware(middleware, attach_to='request')

注册一个应用程序级中间件,该中间件将附加到此应用程序下注册的所有API URL。

此方法由 middleware() 在应用程序级别提供的装饰器。

参数
  • middleware -- 要附加到中间件的回调方法

  • attach_to -- 在中间件的生命周期中需要调用中间件的状态 HTTP请求 . 请求 -在处理请求之前调用 响应 -在返回响应之前调用

返回

装饰器方法

register_named_middleware(middleware, route_names, attach_to='request')
route(uri, methods=frozenset({'GET'}), host=None, strict_slashes=None, stream=False, version=None, name=None)

修饰要注册为路由的函数

参数
  • uri -- URL路径

  • methods -- 允许的方法列表或元组

  • host --

  • strict_slashes --

  • stream --

  • version --

  • name -- URL的用户定义路由名称

返回

路由元组,修饰函数

run(host: Optional[str] = None, port: Optional[int] = None, *, debug: bool = False, auto_reload: Optional[bool] = None, ssl: Optional[Union[dict, ssl.SSLContext]] = None, sock: Optional[socket.socket] = None, workers: int = 1, protocol: Optional[Type[asyncio.protocols.Protocol]] = None, backlog: int = 100, stop_event: Any = None, register_sys_signals: bool = True, access_log: Optional[bool] = None, unix: Optional[str] = None, loop: None = None) → None

运行HTTP服务器并监听,直到键盘中断或终端信号。在终端上,在关闭之前排空连接。

参数
  • host (str) -- 主机地址

  • port (int) -- 端口到主机上

  • debug (bool) -- 启用调试输出(减慢服务器速度)

  • auto_reload -- 每当源代码被更改时重新加载应用程序。在调试模式下默认启用。

  • ssl (SSLContext or dict) -- sslcontext,或工作进程的ssl加密的证书和密钥的位置

  • sock (socket) -- 服务器接受连接的套接字

  • workers (int) -- 在尊重它之前接收的进程数

  • protocol (type[Protocol]) -- 异步协议类的子类

  • backlog (int) -- 在拒绝新连接之前,系统将允许的一些未被接受的连接

  • stop_event (None) -- 停止应用程序前要触发的事件-已弃用

  • register_sys_signals (bool) -- 注册 SIG* 事件

  • access_log (bool) -- 允许写入访问日志(减慢服务器速度)

  • unix (str) -- 要监听的Unix套接字而不是TCP端口

返回

没有什么

static(uri, file_or_directory, pattern='/?.+', use_modified_since=True, use_content_range=False, stream_large_files=False, name='static', host=None, strict_slashes=None, content_type=None)

注册根目录以从中提供文件。输入可以是文件或目录。此方法将使设置 Route 服务静态文件所必需的。

参数
  • uri -- 用于服务静态内容的URL路径

  • file_or_directory -- 包含静态文件的静态文件/目录的路径

  • pattern -- 识别有效静态文件的regex模式

  • use_modified_since -- 如果为真,则发送文件修改时间,如果浏览器与服务器匹配,则返回“未修改”。

  • use_content_range -- 如果为真,则处理范围请求的头并发送请求的文件部分

  • stream_large_files -- 如果为真,请使用 StreamingHTTPResponse.file_stream() 处理程序而不是 HTTPResponse.file() 用于发送文件的处理程序。如果这是一个整数,则表示要切换到的阈值大小 StreamingHTTPResponse.file_stream()

  • name -- 用于URL的用户定义名称

  • host -- 要使用的服务的主机IP或FQDN

  • strict_slashes -- 指导 Sanic 检查请求URL是否需要使用 /

  • content_type -- 标题的用户定义内容类型

返回

没有

stop()

这会杀死 Sanic

property test_client
async trigger_events(events, loop)

触发器事件(函数或异步):参数事件:要执行的一个或多个同步或异步函数:参数循环:事件循环

update_config(config: Union[bytes, str, dict, Any])

更新应用程序配置.

请参考配置.py::Config.update_配置文件。

url_for(view_name: str, **kwargs)

基于视图名称和提供的值生成URL。

为了构建URL,必须将所有请求参数作为关键字参数提供,并且每个参数必须通过指定参数类型的测试。如果不满足这些条件,a URLBuildError 将被抛出。

不是请求参数的关键字参数将包含在输出URL的查询字符串中。

参数
  • view_name -- 引用视图名称的字符串

  • **kwargs -- 用于生成请求参数和查询字符串参数的键和值。

返回

内置URL

产生:

URLBuildError

websocket(uri, host=None, strict_slashes=None, subprotocols=None, version=None, name=None)

修饰要注册为websocket路由的函数

参数
  • uri -- URL路径

  • host -- 主机IP或FQDN详细信息

  • strict_slashes -- 如果API端点需要以“/”终止或不终止

  • subprotocols -- 具有支持的子协议的str的可选列表

  • name -- 为该URL分配的唯一名称,以便它可以与 url_for()

返回

路由元组,修饰函数