2
A
回答
2
不完全符合您的描述,但可以使用bottle来满足您的需求。 route
修饰器更加结构化。 Bottle不托管WSGI应用程序,尽管它可以作为WSGI应用程序托管。
实施例:
from bottle import route, run
@route('/:name')
def index(name='World'):
return '<b>Hello %s!</b>' % name
run(host='localhost', port=8080)
3
Flask/Werkzeug具有不基于正则表达式以惊人的wsgi URL调度。例如,在烧瓶中:
@myapp.route('/products/<category>/<item>')
def product_page(category, item):
pseudo_sql = select details from category where product_name = item;
return render_template('product_page.html',\
product_details = formatted_db_output)
这让你你所期望的,即,http://example.com/products/gucci/handbag;这是一个非常好的API。如果你只是想文字很简单:
@myapp.route('/blog/searchtool')
def search_interface():
return some_prestored_string
更新:这里每穆罕默德的问题是使用2个非正则表达式的事业从WERKZEUG最小WSGI兼容的应用程序 - 这只是需要一个URL,如果整个路径就是“/”你会得到一个值得欢迎的消息,否则你得到的网址向后:
from werkzeug.routing import Map, Rule
url_map = Map([
Rule('/', endpoint='index'),
Rule('/<everything_else>/', endpoint='xedni'),
])
def application(environ, start_response):
urls = url_map.bind_to_environ(environ)
endpoint, args = urls.match()
start_response('200 OK', [('Content-Type', 'text/plain')])
if endpoint == 'index':
return 'welcome to reverse-a-path'
else:
backwards = environ['PATH_INFO'][::-1]
return backwards
您可以部署与龙卷风,mod_wsgi的,等等。当然这是很难被击败瓶和漂亮的成语瓶子,或Werkzeug超出Map
和Rule
的完整性和质量。
相关问题
- 1. 正则表达式难度
- 2. 调试正则表达式
- 3. 正则表达式(正则表达式)
- 4. 正则表达式(正则表达式)
- 5. 正则表达式匹配Django URL调度器中的负数?
- 6. ASP.Net正则表达式(%符号)正则表达式验证器
- 7. 正则表达式正则表达式正则表达式使用正则表达式,但不是与Python
- 8. Perl正则表达式模式长度
- 9. Posix正则表达式非捕获组
- 10. JavaScript非正则表达式替换
- 11. 搜索非常量正则表达式
- 12. 非贪婪的正则表达式
- 13. Python的 - 非正则表达式匹配
- 14. 非贪婪在Python正则表达式
- 15. 非贪婪正则表达式匹配
- 16. C++ 11正则表达式,非贪婪
- 17. 多行非终止正则表达式
- 18. 非运算符在正则表达式
- 19. 非常简单的正则表达式
- 20. 非字符串的正则表达式
- 21. Notepad ++非贪婪正则表达式
- 22. Python非贪婪正则表达式
- 23. 正则表达式可选的非正则表达式的小组赛
- 24. PHP-MySQLi替换为正则表达式/正则表达式/正则表达式
- 25. 正则表达式正则表达式返回的值正则表达式
- 26. 正则表达式正则表达式模仿正则表达式
- 27. Java正则表达式运行速度非常慢
- 28. 正则表达式为最小长度的非小数点
- 29. 正则表达式表达
- 30. 正则表达式表达
它是一个wsgi调度程序,它将HTTP请求传递给wsgi应用程序?或者在我的答案中与'bottle'相同,是否期望与特定框架一起使用的函数? – 2010-08-30 12:22:27
查看第二个链接,快速入门部分。但是,是的,您只能使用Werkzeug路由进行纯wsgi调度,您可以调用'Map'对象上的'bind_to_environ'方法,请求的wsgi environ作为应用程序中的一个参数,然后关闭并运行 - 您可以在6行代码中只有'Map'和'Rule'的wsgi兼容应用程序。 Flask的东西只是一个很好的工具,用于以更透明的方式处理这些相同的对象。 – unmounted 2010-08-31 02:01:32