受Sinatra启发的Python网络框架
项目描述
霍布肯
=======
[](http://travis-ci.org/andrew-d/Hoboken)
霍布肯是一个类似于Sinatra的Python网络框架。它旨在使编写简单的网络应用变得既容易,又提供足够的强大功能以完成更复杂的事情。霍布肯官方支持Python 2.6、2.7和3.2(因为这些是WebOb支持的平台)。非官方地,测试在Python 3.0(但不是3.1)上通过。
目前,霍布肯处于alpha阶段。有许多测试(实际上,测试覆盖率是100%),但文档略少。话虽如此,这里有一个简单的“Hello World”应用程序
from hoboken import HobokenApplication
app = HobokenApplication(__name__)
@app.get("/")
def index()
return 'Hello world!'
下面是一个演示霍布肯更多功能的另一个应用程序
from hoboken import HobokenApplication
app = HobokenApplication(__name__)
@app.get("/greet/:name")
def greeting(name=None)
app.response.json_body = {
"greeting": "Hello {0}!".format(name)
}
您可以使用任何WSGI服务器来托管此应用程序(因为霍布肯应用程序是WSGI应用程序)。还有一个内置的测试服务器,因此如果我们使用此服务器来测试我们的应用程序:`app.test_server(port=8080)`,我们可以这样做
$ curl -ik http://localhost:8080/greet/John
HTTP/1.0 200 OK
Date: Thu, 19 Jul 2012 00:00:00 GMT
Server: WSGIServer/0.1 Python/2.7.3
Content-Type: text/html; charset=UTF-8
Content-Length: 26
{"greeting":"Hello John!"}
最后,这是一个更长的例子
from __future__ import print_function
from hoboken import HobokenApplication
app = HobokenApplication(__name__)
@app.before("/admin/*")
def authenticate(path)
注释:这个函数在实际路由之前运行。待办事项:进行一些认证。
pass
@app.get("/")
def index()
return "欢迎使用本应用!"
@app.get("/books/:author/*")
def get_book(title, author=None)
return "寻找书籍 '{0}' 由 '{1}'"。format(title, author)
@app.post("/books/:author")
def add_book(author=None)
return "为 '{0}' 添加了书籍"。format(author)
好了!这里是Hoboken的一些简单演示。
杂项
-----------
Hoboken遵循Apache许可证,由Andrew Dunham创建和开发。
=======
[](http://travis-ci.org/andrew-d/Hoboken)
霍布肯是一个类似于Sinatra的Python网络框架。它旨在使编写简单的网络应用变得既容易,又提供足够的强大功能以完成更复杂的事情。霍布肯官方支持Python 2.6、2.7和3.2(因为这些是WebOb支持的平台)。非官方地,测试在Python 3.0(但不是3.1)上通过。
目前,霍布肯处于alpha阶段。有许多测试(实际上,测试覆盖率是100%),但文档略少。话虽如此,这里有一个简单的“Hello World”应用程序
from hoboken import HobokenApplication
app = HobokenApplication(__name__)
@app.get("/")
def index()
return 'Hello world!'
下面是一个演示霍布肯更多功能的另一个应用程序
from hoboken import HobokenApplication
app = HobokenApplication(__name__)
@app.get("/greet/:name")
def greeting(name=None)
app.response.json_body = {
"greeting": "Hello {0}!".format(name)
}
您可以使用任何WSGI服务器来托管此应用程序(因为霍布肯应用程序是WSGI应用程序)。还有一个内置的测试服务器,因此如果我们使用此服务器来测试我们的应用程序:`app.test_server(port=8080)`,我们可以这样做
$ curl -ik http://localhost:8080/greet/John
HTTP/1.0 200 OK
Date: Thu, 19 Jul 2012 00:00:00 GMT
Server: WSGIServer/0.1 Python/2.7.3
Content-Type: text/html; charset=UTF-8
Content-Length: 26
{"greeting":"Hello John!"}
最后,这是一个更长的例子
from __future__ import print_function
from hoboken import HobokenApplication
app = HobokenApplication(__name__)
@app.before("/admin/*")
def authenticate(path)
注释:这个函数在实际路由之前运行。待办事项:进行一些认证。
pass
@app.get("/")
def index()
return "欢迎使用本应用!"
@app.get("/books/:author/*")
def get_book(title, author=None)
return "寻找书籍 '{0}' 由 '{1}'"。format(title, author)
@app.post("/books/:author")
def add_book(author=None)
return "为 '{0}' 添加了书籍"。format(author)
好了!这里是Hoboken的一些简单演示。
杂项
-----------
Hoboken遵循Apache许可证,由Andrew Dunham创建和开发。
项目详情
关闭
Hoboken-0.5.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 325b372b9c9195a2e654b90e668a7e57930b995bf3ed129877f56ab5f3ac1321 |
|
MD5 | 49ace6668b9aa16a5c5aad9e470380f5 |
|
BLAKE2b-256 | 9372238fde24c0c654579ec442f239a251be675dde9a9fb52db8167ee817c55c |