是否可以在同一路径上使用2种方法(GET和POST)?

布利

我想在控制器中有2个方法,它们具有相同的路由,但仅HTTP方法不同。具体来说,如果我的路线看起来像

routes.MapRoute(
    name: "DataRoute",
    url: "Sample/{user}/{id}/",
    defaults: new { controller = "Sample", action = "--not sure--", user = "", id = "" }
);

我在控制器中有2种方法,例如:

[HttpGet]
public void ViewData(string user, string id)

[HttpPost]
public void SetData(string user, string id)

期望的行为是,ViewData()如果我GET则Sample/a/b调用,SetData()如果我POST到Sample/a/b相同的URL,则调用

我知道我可以只创建2条单独的路线,但是出于设计原因,我希望只用GET和来区分一条路线POST有没有一种方法可以配置路由或控制器来执行此操作而无需创建新路由?

恩科西

使用属性路由,您应该能够使用不同的方法设置相同的路由。

[RoutePrefix("Sample")]
public class SampleController : Controller {
    //eg GET Sample/a/b
    [HttpGet]
    [Route("{user}/{id}")]
    public void ViewData(string user, string id) { ... }

    //eg POST Sample/a/b
    [HttpPost]
    [Route("{user}/{id}")]
    public void SetData(string user, string id) { ... }
}

不要忘记在基于约定的路由之前启用属性路由

routes.MapMvcAttributeRoutes();

您应该编辑该SetData方法以从POST主体中获取一些负载。

public void SetData(string user, string id, MyCustomObject data) { ... }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

是否可以在同一路径上使用2种方法(GET和POST)?

来自分类Dev

ExpressJS GET和POST在同一路径上

来自分类Dev

如何使用在同一路径上运行的2种单独的笔触颜色创建Google地图折线?

来自分类Dev

同一路径上的子资源定位器和资源方法是否非法?

来自分类Dev

在同一路径上扩展REST类和重写方法

来自分类Dev

在同一路径上远程复制文件

来自分类Dev

是否可以在同一路径中添加多个项目?

来自分类Dev

可移动介质是否始终安装在同一路径上

来自分类Dev

检查文件是否已存在于同一路径中

来自分类Dev

QDbus:在同一路径上注册多个对象

来自分类Dev

在同一路径上累积所有密钥

来自分类Dev

QDbus:在同一路径上注册多个对象

来自分类Dev

express 和 sequelize - 在同一路径中加载不相关的模型

来自分类Dev

Angular2:有条件/替代地在同一路径上定义两条异步路由

来自分类Dev

在Netlogo中的同一路径上为乌龟分配随机位置而没有乌龟?

来自分类Dev

Express JS,第二次对同一路径的GET请求始终处于待处理状态

来自分类Dev

在SwiftUI视图中两次引用同一路径的最佳方法是什么?

来自分类Dev

确定一个路径是否在Ruby中的另一路径下?

来自分类Dev

导航到同一路径而不刷新组件?

来自分类Dev

Rails-重定向到同一路径中的不同页面

来自分类Dev

XML :: Twig在同一路径中解析相同的名称标签

来自分类Dev

如何启用两个脚本将日志写入同一路径

来自分类Dev

创建文档并添加到同一路径中的文档集

来自分类Dev

将多个子目录重写为同一路径 htaccess

来自分类Dev

如何使用多路径的统一路径选项?

来自分类Dev

通过有向无环图存储唯一路径是否可行?

来自分类Dev

创建唯一路径时是否存在竞争条件?

来自分类Dev

Firebase-另一路径上的基于用户的规则访问

来自分类Dev

单一路径Android的多种颜色

Related 相关文章

  1. 1

    是否可以在同一路径上使用2种方法(GET和POST)?

  2. 2

    ExpressJS GET和POST在同一路径上

  3. 3

    如何使用在同一路径上运行的2种单独的笔触颜色创建Google地图折线?

  4. 4

    同一路径上的子资源定位器和资源方法是否非法?

  5. 5

    在同一路径上扩展REST类和重写方法

  6. 6

    在同一路径上远程复制文件

  7. 7

    是否可以在同一路径中添加多个项目?

  8. 8

    可移动介质是否始终安装在同一路径上

  9. 9

    检查文件是否已存在于同一路径中

  10. 10

    QDbus:在同一路径上注册多个对象

  11. 11

    在同一路径上累积所有密钥

  12. 12

    QDbus:在同一路径上注册多个对象

  13. 13

    express 和 sequelize - 在同一路径中加载不相关的模型

  14. 14

    Angular2:有条件/替代地在同一路径上定义两条异步路由

  15. 15

    在Netlogo中的同一路径上为乌龟分配随机位置而没有乌龟?

  16. 16

    Express JS,第二次对同一路径的GET请求始终处于待处理状态

  17. 17

    在SwiftUI视图中两次引用同一路径的最佳方法是什么?

  18. 18

    确定一个路径是否在Ruby中的另一路径下?

  19. 19

    导航到同一路径而不刷新组件?

  20. 20

    Rails-重定向到同一路径中的不同页面

  21. 21

    XML :: Twig在同一路径中解析相同的名称标签

  22. 22

    如何启用两个脚本将日志写入同一路径

  23. 23

    创建文档并添加到同一路径中的文档集

  24. 24

    将多个子目录重写为同一路径 htaccess

  25. 25

    如何使用多路径的统一路径选项?

  26. 26

    通过有向无环图存储唯一路径是否可行?

  27. 27

    创建唯一路径时是否存在竞争条件?

  28. 28

    Firebase-另一路径上的基于用户的规则访问

  29. 29

    单一路径Android的多种颜色

热门标签

归档