我需要将包含斜线的字符串通过URL中的最后一个参数传递给我的瓶装服务器,但由于斜杠会像参数分隔符那样处理,服务器无法按需要处理它。 我发现了一个网页约烧瓶如何支持这一点: http://flask.pocoo.org/snippets/76/ 但没有找到一瓶类似的解决方案还将包含斜线的参数传递给瓶子
回答
听起来像是你想:path
:
:path matches all characters including the slash character in a non-greedy way and may be used to match more than one path segment.
例如,
@route('/root/<path:thepath>')
def callback(thepath):
# `thepath` is everything after "/root/" in the URI.
...
编辑:在回应OP的评论(下面),这是一个片段,它可以工作对我来说:
from bottle import Bottle, route
app = Bottle()
@app.route('/add/<uid>/<collection>/<group>/<items:path>')
def add(uid, collection, group, items):
return 'your uri path args: {}, {}, {}, {}\n'.format(uid, collection, group, items)
app.run(host='0.0.0.0', port=8081)
收率:
% ~>curl 'http://127.0.0.1:8081/add/1/2/3/and/now/a/path'
your uri path args: 1, 2, 3, and/now/a/path
那么,这是在我给出的链接中描述的烧瓶解决方案,但在瓶中,它给了我这个错误: 回溯(最近呼叫最后): 文件“myfile.py”,行105,在
好的。我需要查看您的代码以进一步帮助您。你如何定义路线? –
'@route( '/添加/
- 1. 将包含参数值的函数传递给子组件
- 2. 瓶将数据传递给子模板
- 3. 将参数传递给包含' - '的javascript函数
- 4. 无法将包含空格的参数传递给vbs函数
- 5. 将参数传递给setTimeout的闭包
- 6. SignalR将数据传递给包含类
- 7. 路线Globbing与参数包含斜杠
- 8. 将变量传递给sed,当变量包含斜杠(/)
- 9. 如何将包含'<'的命令行参数传递给'exec'
- 10. 将包含路径的参数传递给控制器
- 11. 将参数传递给Ruby中包含的模块?
- 12. icefaces包含参数传递
- 13. Android:将参数传递给线程
- 14. 将参数传递给Java线程
- 15. 将参数传递给多个线程
- 16. 将参数传递给线程
- 17. 将参数传递给线程
- 18. 传递参数给线程
- 19. 传递参数给线程
- 20. 传递字符串作为包含斜线的uri参数或为空
- 21. 如何在GO中传递包含斜线的url作为路径参数?
- 22. 将参数传递给SQL DTS包
- 23. 将用户参数传递给SSIS包
- 24. Yii2:将参数传递给面包屑
- 25. 将参数传递给php包含/ require构造
- 26. 将可变参数传递给javascript src ='xxx'外部包含
- 27. 将参数传递给框架实例化的类? (Python的瓶)
- 28. Java将参数传递给子进程
- 29. 将参数传递给select子句Codeigniter
- 30. 将参数传递给子程序
发现: @route( '/组/') 从: http://stackoverflow.com/questions/8171618/how-do-you-accept-any-url-in-a-python-bottle-server –
With Bottle 0.11你应该比're'更喜欢'path' ......但是无论flo在你的船上。 :) –