- Python Falcon 教程
- Python Falcon - 首页
- Python Falcon - 简介
- Python Falcon - 环境搭建
- Python Falcon - WSGI vs ASGI
- Python Falcon - Hello World (WSGI)
- Python Falcon - Waitress
- Python Falcon - ASGI
- Python Falcon - Uvicorn
- Python Falcon - API 测试工具
- 请求 & 响应
- Python Falcon - 资源类
- Python Falcon - 应用类
- Python Falcon - 路由
- Falcon - 后缀响应器
- Python Falcon - Inspect 模块
- Python Falcon - Jinja2 模板
- Python Falcon - Cookie
- Python Falcon - 状态码
- Python Falcon - 错误处理
- Python Falcon - Hook
- Python Falcon - 中间件
- Python Falcon - CORS
- Python Falcon - WebSocket
- Python Falcon - SQLAlchemy 模型
- Python Falcon - 测试
- Python Falcon - 部署
- Python Falcon 有用资源
- Python Falcon - 快速指南
- Python Falcon - 有用资源
- Python Falcon - 讨论
Python Falcon - Hello World (WSGI)
要创建一个简单的 Hello World Falcon 应用,首先导入库并声明一个 App 对象实例。
import falcon app = falcon.App()
Falcon 遵循 REST 架构风格。声明一个资源类,其中包含一个或多个表示标准 HTTP 动词的方法。下面的 HelloResource 类包含 on_get() 方法,该方法在服务器接收到 GET 请求时被调用。该方法返回 Hello World 响应。
class HelloResource: def on_get(self, req, resp): """Handles GET requests""" resp.status = falcon.HTTP_200 resp.content_type = falcon.MEDIA_TEXT resp.text = ( 'Hello World' )
要调用此方法,我们需要将其注册到路由或 URL。Falcon 应用对象通过 add_rule 方法将处理程序方法分配给相应的 URL 来处理传入的请求。
hello = HelloResource() app.add_route('/hello', hello)
Falcon 应用对象只是一个 WSGI 应用。我们可以使用 Python 标准库中 wsgiref 模块中的内置 WSGI 服务器。
from wsgiref.simple_server import make_server if __name__ == '__main__': with make_server('', 8000, app) as httpd: print('Serving on port 8000...') # Serve until process is killed httpd.serve_forever()
示例
让我们将所有这些代码片段放在 hellofalcon.py 中
from wsgiref.simple_server import make_server import falcon app = falcon.App() class HelloResource: def on_get(self, req, resp): """Handles GET requests""" resp.status = falcon.HTTP_200 resp.content_type = falcon.MEDIA_TEXT resp.text = ( 'Hello World' ) hello = HelloResource() app.add_route('/hello', hello) if __name__ == '__main__': with make_server('', 8000, app) as httpd: print('Serving on port 8000...') # Serve until process is killed httpd.serve_forever()
从命令提示符运行此代码。
(falconenv) E:\falconenv>python hellofalcon.py Serving on port 8000...
输出
在另一个终端中,运行 Curl 命令如下:
C:\Users\user>curl localhost:8000/hello Hello World
您也可以打开浏览器窗口并输入上述 URL 以获得“Hello World”响应。
广告