跳转到主要内容

基于Hyper库和受Gunicorn启发的ASGI服务器

项目描述

Hypercorn logo

Build Status docs pypi http python license

Hypercorn是一个基于sans-io hyper、h11、h2和wsproto库的ASGI和WSGI网络服务器,并受Gunicorn的启发。Hypercorn支持HTTP/1、HTTP/2、WebSocket(通过HTTP/1和HTTP/2)、ASGI和WSGI规范。Hypercorn可以利用asyncio、uvloop或trio工作类型。

Hypercorn可以选择使用aioquic库来提供HTTP/3规范的当前草案。要启用此功能,安装h3可选额外功能,pip install hypercorn[h3],然后选择quic绑定,例如hypercorn --quic-bind localhost:4433 ...

Hypercorn最初是Quart的一部分,后来被分离出来成为一个独立的服务器。Hypercorn从Quart的0.5.0版本分支。

快速入门

Hypercorn可以通过pip安装,

$ pip install hypercorn

并需要Python 3.8或更高版本。

安装Hypercorn后,可以通过命令行使用Hypercorn来提供ASGI框架(或应用程序)。

$ hypercorn module:app

或者,Hypercorn也可以通过编程方式使用。

import asyncio
from hypercorn.config import Config
from hypercorn.asyncio import serve

from module import app

asyncio.run(serve(app, Config()))

API使用文档中了解更多信息(包括上述Trio示例)。

贡献

Hypercorn在Github上开发。如果您遇到问题或有功能请求,请打开一个问题。如果您想贡献修复或功能实现,请提出一个拉取请求(欢迎修改错别字)。

测试

测试Hypercorn的最佳方式是使用Tox

$ pipenv install tox
$ tox

这将检查代码风格并运行测试。

帮助

Hypercorn的文档是开始的地方,之后尝试搜索Stack Overflow,如果仍然找不到答案,请打开一个问题

项目详情


下载文件

下载适合您平台的项目文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

hypercorn-0.17.3.tar.gz (44.4 kB 查看哈希值)

上传时间 源代码

构建分发

hypercorn-0.17.3-py3-none-any.whl (61.7 kB 查看哈希值)

上传时间 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面