我在我的主应用程序中有以下代码.我希望除了前两个之外的所有路径都被最后一个路由(/.*)捕获.但我得到404错误.我错过了什么?
import webapp2
from webapp2 import WSGIApplication, Route
# ---- main handler
class MainPage(webapp2.RequestHandler):
def get(self):
ret = jinja2render.DoRender(self)
return ret
routes = [
Route (r'/rpc', handler = 'rpc.RPCHandler'),
Route (r'/secured/somesecuredpage', handler = 'secured.securedPageHandler'),
Route (r'/.*', handler = MainPage),
]
app = WSGIApplication(routes, debug=True)
Run Code Online (Sandbox Code Playgroud)
我可以将最后一条路径从"/."更改为"/ <:. >"以捕获所有其他路径,但这也要求我在MainPage.get函数中包含一个命名参数.这是唯一的办法,还是我错过了什么?谢谢.
根据URI模板文档,这应该做的伎俩:
Route (r'/<:.*>', handler=MainPage)
Run Code Online (Sandbox Code Playgroud)
您可能需要MainPage.get按如下方式定义方法以接受额外的参数:
def get(self, *args, **kwargs):
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1775 次 |
| 最近记录: |