通常在 OpenRasta 中有一些像这样的配置:
ResourceSpace.Has.ResourcesOfType<Customers>()
.AtUri("/customers/region/{region}")
... // and so on
...在哪里{region}
路径的一部分会自动映射到处理方法中的字符串参数。因此,如果用户点击:
http://server/customers/region/emea
然后向处理程序方法传递字符串“emea”。
除了这样做之外,我还想注册一个处理程序,如下所示:
ResourceSpace.Has.ResourcesOfType<Customers>()
.AtUri("/someotherthing/*")
... // and so on
在这个想象的语法中,星号意味着“将路径的其余部分(包括斜杠)作为单个字符串参数传递给处理方法”。因此,如果用户点击:
http://server/someotherthing/how/about/this?that=other
然后我的处理程序方法接收一个字符串参数:
how/about/this?that=other
在 OpenRasta 中这样的事情可能吗?
在 Sinatra (Ruby) 中,我将使用正则表达式来完成此操作。
Update:到目前为止,我的猜测是一个自定义管道,它以某种方式破坏了路径来掩盖斜线......
trac 上有一个补丁可以将此功能添加到 RC 分支。
我将在本周末将这些更改作为 RC2 推送,这样您将获得通配符语法。
请注意,它看起来像 /{name:*}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)