我想在某些路由中使用以下正则表达式来启用响应内容的格式设置:
RedirectRoute(r'/mypath/<:|json|xml>', handler=myhandler, handler_method='mymethod', name='myhandler=mymethod', methods=['POST'], strict_slash=True),
上述代码段的所需功能如下:
任何想法如何做到这一点?
答案 0 :(得分:0)
路由类doesn't支持其内部变量之外的正则表达式。所以试试
RedirectRoute('/mypath<format:|/xml|/json>', handler=myhandler, handler_method='mymethod', name='myhandler=mymethod', methods=['POST'], strict_slash=True)
您只需要在请求处理程序中从接收到的值中删除前导斜杠。
变量的名称<format:
是必需的,因为如果Bad request
(带有结束斜杠)请求为空时(&lt; :),则出现/mypath/
错误。当webapp尝试创建URL以重定向到/mypath
为strict_slash = True时,会发生错误。我想你有同样的错误。