关闭

Bottle学习之hello world

95人阅读 评论(0) 收藏 举报

Bottle是一个快速,简单,轻量级的 Python WSGI Web框架。单一文件,只依赖 Python标准库 这篇Bottle教程将带你入门,写下第一行代码:hello world

 

下载和安装

通过 pip install bottle  easy_install -U bottle 安装最新稳定版,再或者下载bottle.py (开发版到你的项目目录。 Bottle 除了Python 标准库外无任何依赖库且支持 Python 2.6+  Python 3.2+

 

安装

Bottle不依赖其他库,你需要做的仅是下载 bottle.py (开发版)到你的项目文件夹,然后开始写代码。

$ wget http://bottlepy.org/bottle.py

在终端运行以上命令,即可下载到Bottle的最新开发版,包含了所有新功能特性。如果更需要稳定性,你应该坚持使用Bottle的稳定版本。可在 PyPI 下载稳定版本,然后通过 pip(推荐), easy_install 或你的包管理软件安装。

$ sudo pip install bottle              # 推荐

$ sudo easy_install bottle             # 若无pip,尝试这个

$ sudo apt-get install python-bottle   # 适用于 debian, ubuntu, ...

总之,你需要 Python 2.6 或以上 (包括 3.2+) 版本来运行Bottle。 如果你没有权限或不想安装全局性的Bottle,可以尝试使用 virtualenv

$ virtualenv develop              # 创建虚拟环境

$ source develop/bin/activate     # 激活虚拟环境(develop)$ pip install -U bottle  # 在虚拟环境中安装 Bottle

如果还未安装virtualenv:

$ wget https://raw.github.com/pypa/virtualenv/master/virtualenv.py

$ python virtualenv.py develop    # 创建一个虚拟环境

$ source develop/bin/activate     # 使用虚拟环境里的 Python 解析器(develop)$ pip install -U bottle  # 在虚拟环境中安装Bottle

 

开始: “Hello World”

到目前为止,我假设你已经 安装 好了bottle或已将bottle.py拷贝到你的项目文件夹。接下来我们就可以写一个非常简单的”Hello World”:

from bottle import route, run

@route('/hello')def hello():

    return "Hello World!"

run(host='localhost', port=8080, debug=True)

就这么简单!保存为py文件并执行,用浏览器访问 http://localhost:8080/hello 就可以看到”Hello World!”。它的执行流程大致如下:

route() 函数将一段代码绑定到一个 URL,在这个例子中,我们将 hello() 函数绑定给了/hello。 我们称之为 route (也是该修饰器的函数名),这也是 Bottle 框架最重要的开发理念。在浏览器请求一个 URL 的时候,框架自动调用与之相应的函数,接着将函数的返回值发送给浏览器。就这么简单!

最后一行调用的 run() 函数启动了内置的开发服务器。它监听 localhost 8080端口并响应请求, Control-c 可将其关闭。到目前为止,这个内置的开发服务器已经足够用于日常的开发测试了。它根本不需要安装,就可以让你的应用跑起来。在教程的后面,你将学会如何让你的应用跑在其他服务器上面(译者注:内置服务器不能满足生产环境的要求)

调试模式 在早期开发的时候非常有用,但请务必记得,在生产环境中将其关闭。

毫无疑问,这是一个十分简单的例子,但它展示了 Bottle 开发应用的基本理念。

 

 

文章来自:开源中国

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:170141次
    • 积分:10963
    • 等级:
    • 排名:第1614名
    • 原创:942篇
    • 转载:2篇
    • 译文:0篇
    • 评论:17条
    最新评论