webapp.WSGIApplication所有其他可能的路径
问题描述:
我已通过webapp2 Route to match all other pathswebapp.WSGIApplication所有其他可能的路径
走后,我尽量匹配
class SinkHandler(webapp2.RequestHandler):
def get(self, *args, **kwargs):
self.response.out.write('Sink')
application = webapp2.WSGIApplication([
(r'/<:.*>', SinkHandler)
], debug = True)
为了配合
http://localhost:9080/dummy
http://localhost:9080/dummy/eummy
http://localhost:9080/dummy/eummy/fummy
,但它只是产生404未找到。
我可以这样做。
class SinkHandler(webapp2.RequestHandler):
def get(self, *args, **kwargs):
self.response.out.write('Sink')
application = webapp2.WSGIApplication([
(r'/(\w*)$', SinkHandler),
(r'/(\w*)/(\w*)$', SinkHandler),
(r'/(\w*)/(\w*)/(\w*)$', SinkHandler)
], debug = True)
它能够匹配上述3种类型的URL。但是,如果我需要支持
http://localhost:9080/dummy/eummy/fummy/gummy
我需要在WSGIApplication
添加额外的条目是有一个更聪明的办法,以匹配所有其它可能的路径?
答
这应该工作:
application = webapp2.WSGIApplication([
(r'/.*', SinkHandler)
], debug = True)
使用更一般的正则表达式,你需要使用Route
:
from webapp2 import Route
application = webapp2.WSGIApplication([
Route(r'/<:.*>', SinkHandler)
], debug = True)