Falcon Web框架

释放V 4.0dev1 (Installation

Falcon 是一个最低限度的ASGI/WSGI框架,用于构建任务关键型REST API和微服务,重点关注规模上的可靠性、正确性和性能。

我们喜欢把Falcon看作是 迪特尔·拉姆斯 Web框架。Falcon鼓励REST架构风格,并试图在保持高效的同时尽可能少地做事情。

class QuoteResource:

    def on_get(self, req, resp):
        """Handles GET requests"""
        quote = {
            'quote': (
                "I've always been more interested in "
                "the future than in the past."
            ),
            'author': 'Grace Hopper'
        }

        resp.media = quote


app = falcon.App()
app.add_route('/quote', QuoteResource())

人们在说什么

“Falcon坚如磐石,速度很快。”

我们一直在使用Falcon作为替代产品 [另一个框架] 而且我们非常喜欢它的性能(速度快三倍)和代码库大小(很容易就是我们 [原创] 代码)。“

“我很喜欢 Folcon 框架!超级干净和简单,我终于有了我需要的速度和灵活性!”

“Falcon到目前为止看起来很棒。我为我的一个小型服务器做了一个快速测试,只花了20分钟的时间就快了约40%。”

“我觉得我只是在说HTTP,中间没有任何东西。Falcon似乎是后端系统的请求。”

“Falcon的源代码非常好,我几乎更喜欢它而不是文档。基本上不会错的。”

“还有什么其他框架集成了对786的支持,请立即尝试?”

特征

Falcon在保持高效的同时,尽可能少做一些事情。

  • ASGI, WSGI ,以及 WebSocket 支持

  • 原生的 asyncio 支持

  • 不依赖魔术全局进行路由和状态管理

  • 稳定的接口,强调向后兼容性

  • 通过集中式RESTful进行简单的API建模 routing

  • 高度优化、可扩展的代码库

  • 通过以下方式轻松访问页眉和正文 request and response 对象

  • 通过以下方式处理干请求 middleware 组件和挂钩

  • 严格遵守RFC

  • 惯用语 HTTP error 回应

  • 简单的异常处理

  • 时髦的 testing 使用WSGI/ASGI帮助器和模拟

  • 支持CPython3.7+和PyPy 3.7+

谁在使用Falcon?

Falcon在世界各地被越来越多的组织使用,包括:

  • 7想法

  • 克罗尼托

  • EMC

  • 飓风电力

  • 引线

  • OpenStack

  • 莫索

  • 轮班

  • tempfil.es

  • Opera软件

如果您在社区或商业项目中使用Falcon框架,请考虑在下面的wiki中添加您的信息。 Who's Using Falcon?

您也可以查看我们的 Add-on Catalog ,您可以在其中找到由社区维护的附加组件列表。

文档