📅  最后修改于: 2023-12-03 15:40:48.752000             🧑  作者: Mango
烧瓶(Bottle)是一个轻量级的 Python Web 框架,适用于小型项目或者为您的大型项目提供 REST API。它只有一个文件,因此安装非常方便。使用烧瓶,您可以在几分钟内构建 Web 应用程序。
您可以使用 pip 安装烧瓶:
pip install bottle
下面是一个简单的示例,用于创建一个 Web 服务器并返回“Hello World”:
from bottle import route, run
@route('/')
def hello():
return "Hello World!"
run(host='localhost', port=8080, debug=True)
该代码将运行一个本地服务器,监听端口号 8080。当访问 http://localhost:8080/ 时,它将返回“Hello World!”。
路由是指确定如何应答 HTTP 请求的过程。烧瓶使用route()
装饰器来指定 URL 路径和它所关联的函数。例如:
from bottle import route, run
@route('/hello')
def hello():
return "Hello World!"
run(host='localhost', port=8080, debug=True)
该代码将运行一个本地服务器,监听端口号 8080。当访问 http://localhost:8080/hello 时,它将返回“Hello World!”。
烧瓶中的路由函数可以与特定的 HTTP 请求方法关联。例如:
from bottle import route, run, post
@route('/hello')
def hello():
return "Hello World!"
@post('/submit')
def submit():
return "Submitted"
run(host='localhost', port=8080, debug=True)
该代码将运行一个本地服务器,监听端口号 8080。当访问 http://localhost:8080/hello 时,它将返回“Hello World!”。当访问 http://localhost:8080/submit 时,它将返回“Submitted”。
您可以将 URL 路径中的参数传递给路由函数。例如:
from bottle import route, run
@route('/hello/<name>')
def hello(name):
return f"Hello {name}!"
run(host='localhost', port=8080, debug=True)
该代码将运行一个本地服务器,监听端口号 8080。当访问 http://localhost:8080/hello/John 时,它将返回“Hello John!”。
您可以使用static_file()
函数来提供静态文件。例如:
from bottle import route, run, static_file
@route('/')
def index():
return static_file('index.html', root='./static')
run(host='localhost', port=8080, debug=True)
该代码将运行一个本地服务器,监听端口号 8080。当访问 http://localhost:8080/ 时,它将返回网站的主页,即 index.html。
中间件是一种处理 HTTP 请求和响应的方式,它允许您在浏览器和您的应用程序之间执行操作。例如,您可以使用中间件来处理身份验证、日志记录和异常处理。烧瓶支持使用中间件来处理请求和响应。例如:
from bottle import route, run, response
def json_middleware(callback):
def wrapper(*args, **kwargs):
response.content_type = 'application/json'
return callback(*args, **kwargs)
return wrapper
@route('/data')
@json_middleware
def data():
return {'name': 'John Doe', 'age': 30, 'city': 'New York'}
run(host='localhost', port=8080, debug=True)
该代码将运行一个本地服务器,监听端口号 8080。当访问 http://localhost:8080/data 时,它将返回一个 JSON 对象,指定“name”、“age”和“city”属性。
烧瓶是一个简单易用的 Python Web 框架,它适合初学者和快速开发小型项目。除此之外,它还支持 HTTP 服务器和 CGI 接口,并且还可以使用多个 Web 服务器作为后端。基本认识烧瓶,相信你的Python Web开发之路将变得更加轻松!