安装

PyPy

PyPy 是运行您的Falcon应用程序的最快方式。从PyPy v7.3.4开始支持Py3.7+。

$ pip install falcon

或者,要安装最新的测试版或发布候选版(如果有):

$ pip install --pre falcon

CPython

Falcon全力支持 CPython 3.7+。

可以直接从PyPI安装最新稳定版本的Falcon:

$ pip install falcon

或者,要安装最新的测试版或发布候选版(如果有):

$ pip install --pre falcon

为了提供额外的速度提升,Falcon可以用Cython自行编译。包含预编译二进制文件的轮子可从PyPI获得,用于几个常见平台。但是,如果没有适用于您选择的平台的轮子,您可以选择坚持使用源代码发行版,或者使用下面的说明针对您的环境对Falcon进行Cython化。

以下命令告诉pip安装cython,然后调用falcon的 setup.py 它将依次检测Cython的存在,然后使用系统的默认C编译器编译(也称为Cythonize)Falcon框架。

$ pip install cython
$ pip install --no-build-isolation --no-binary :all: falcon

请注意, --no-build-isolation 是覆盖pip的默认PEP517行为所必需的,该行为可能导致在构建环境中找不到Cython。

如果要验证是否正在调用Cython,只需通过 -v 要通过pip来回送编译命令,请执行以下操作:

$ pip install -v --no-build-isolation --no-binary :all: falcon

在OS X上安装

编译cython需要xcode命令行工具。使用以下命令安装它们:

$ xcode-select --install

clang编译器将无法识别的命令行选项视为错误,例如:

clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future]

您还可能看到有关未使用函数的警告。您可以通过如下设置其他clang c编译器标志来解决这些问题:

$ export CFLAGS="-Qunused-arguments -Wno-unused-function"

依赖关系

Falcon不需要安装任何其他软件包,但如果Cython已经安装到环境中,它将用于优化上述框架。

WSGi服务器

Falcon会说wsgi,所以为了服务Falcon应用程序,您需要一个wsgi服务器。Gunicorn和Uwsgi是最受欢迎的,但是任何可以加载wsgi应用程序的东西都可以。

Windows用户可以尝试WAITRESS,这是一款产品级质量的纯Python WSGI服务器。Windows上的其他选择包括通过WSL运行Gunicorn和uWSGI,以及在Linux Docker容器内运行。

$ pip install [gunicorn|uwsgi|waitress]

ASGI服务器

相反,为了运行 async Falcon ASGI app ,您将需要一个 ASGI 应用服务器(Falcon仅支持ASGI 3.0+,也称为单调用应用程序风格)。

Uvicorn是一种流行的选择,因为它的实施速度快,运行稳定。更重要的是,Windows和PyPy都支持Uvicorn(然而,与Unix类系统上的CPython相比,两者都有性能损失)。

Falcon还定期针对当前的ASGI参考服务器Daphne进行测试。

有关可用服务器的更深入概述,另请参阅: ASGI Implementations

$ pip install [uvicorn|daphne|hypercorn]

备注

默认情况下, uvicorn 包只附带最小的纯Python依赖项集。对于基于CPython的生产部署,您可以安装Uvicorn以及更优化的替代方案,例如 uvloop (更快的事件循环), httptools (更快的HTTP协议实现)等:

$ pip install uvicorn[standard]

另请参阅Uvicorn网站上的更长说明: Quickstart

源代码

Falcon lives on GitHub 使代码易于浏览、下载、分叉等。拉请求总是受欢迎的!另外,如果这个项目让你高兴的话,请记住在它上面加上星号。:)

一旦克隆了回购协议或从Github下载了tarball,就可以像这样安装falcon:

$ cd falcon
$ pip install .

或者,如果要编辑代码,请首先分叉主repo,将分叉克隆到桌面,然后运行以下命令,使用符号链接安装它,这样当您更改代码时,更改将自动对应用程序可用,而无需重新安装包:

$ cd falcon
$ pip install -e .

您可以通过切换到克隆的repo目录,然后运行pytest,手动测试对falcon框架的更改:

$ cd falcon
$ pip install -r requirements/tests
$ pytest tests

或者,要运行默认测试集:

$ pip install tox && tox

小技巧

也见 tox.ini 文件以获取可用环境的完整列表。

最后,要从源代码构建Falcon的文档,只需运行:

$ pip install tox && tox -e docs

创建文档后,您可以通过在浏览器中打开以下索引页来查看它们。在OS X上,简单的如下:

$ open docs/_build/html/index.html

或者在Linux上:

$ xdg-open docs/_build/html/index.html