我正在尝试使用:path通配符过滤器(如here所述)来匹配我的URL的一部分,其中包含正斜杠字符。例如,如果我有URL:
/resources/adfs89s7/container/asdf%2Fasdf/items
(其中%2F是正斜杠),我想将它与路线匹配:
/resources/<resource_id>/container/<container_name:path>/items
但是,这当前返回Not Found错误。我有类似的URL,其中通配符过滤器位于URL的末尾,例如
/resources/<resource_id>/container/<container_name:path>
这似乎工作正常。有谁知道会发生什么?
答案 0 :(得分:0)
从您的示例中,您的容器名称似乎已被转义(因为它们应该是)。在这种情况下,您不需要Bottle路线中的path
类型说明符。即,你想要这个:
/resources/<resource_id>/container/<container_name>/items
还要记住,上面的路由不匹配带有斜杠的路径,所以如果这是一个RESTful浏览API,那么你可能想要制作路径:
/resources/<resource_id>/container/<container_name>/items/