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)