我希望由2个或更多路由模式执行相同的操作。
例如:
//Route 1:
Get["/{category}/{product_name}/{id}"]
// Route 2:
Get["/api/products/{id}"]
Run Code Online (Sandbox Code Playgroud)
理想情况下,第一个路由是SEO友好的并返回一个视图,第二个路由将返回JSON并用作API。
仅仅是定义2条单独的路由并调用封装在另一种方法中的通用逻辑,这仅仅是问题吗?还是有一些我不知道的南希魔术?
更新 我的最终解决方案是在一个语句中使用多个分配。
Get["/{category}/{product_name}/{id}"] = Get["/api/products/{id}"] = params =>
{
...
};
Run Code Online (Sandbox Code Playgroud)
我知道这是可以回答的,但是我想我会为一些稍微整洁的解决方案添加一些帮助。这是我的解决方案:
public class ExampleModule : NancyModule
{
public ExampleModule()
{
Get["/somepath"] = DoSomething;
Post["/somepath"] = DoSomething;
}
private dynamic DoSomething(dynamic parameters)
{
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1006 次 |
| 最近记录: |