我有这样一个URL方案:MVC控制器冒泡回路由器?
website.com/keywords
我也有特定的控制器:
website.com/controller/action
有时关键字可能看起来极像是控制器的网址,或有某种“/ url/thingy“。所有关键字网址将被存储在数据库中并返回静态内容。我希望能够做到的事情是让“关键字”控制器首先匹配(它只是使用{*}),并且如果在数据库中找不到URL,请回到路由器,然后让匹配继续。
我已经有了一种解决方法,它将通用匹配路由器放在最后,并将302重定向到适当的控制器,但这是一个较长的往返时间,如果我可以弹出退出。
您可以为路线添加自定义约束,该约束可以与列表匹配。你甚至可以对约束中的数据库进行查找 - 但是由于所有内容都将通过路由引擎传递,我不确定从可伸缩性的角度来看这是否明智,除非您有效地缓存查找。无论如何,这可能会在SO上得到更好的答案。 – FinnNk