我在这个Microsoft Doc中读到了它:
" {动作}"提供动作的名称。在Web API中,通常的惯例是省略" {action}"。
但我认为{action}
在routeTemplate: "{controller}/{action}",
中使用WebApiConfig.ca
非常有用,
我可以通过像http://localhost:1111/controllerName/MethodName
为什么文档会说 usual convention is to omit "{action}"
?
答案 0 :(得分:1)
如果我们在控制器中使用方法,那么{action}很有用。
在Microsoft Web-api控制器的默认模板中,他们使用直接方法来响应控制器。因此,不需要使用{action},如果需要在控制器中使用方法,则需要在routeTemplate中实现{action}:" {controller} / {action}"
Microsoft文档参数中的是可选的,但方法不是可选的。如果我们使用方法,那么需要整合路线参数。
答案 1 :(得分:1)
在我的反击中,当您编写restful webapi时,您应该使用HTTP方法(GET,POST,PUT,DELETE .etc)并在仔细考虑之后描述您的URI。 你能否说出URIS的不同之处如下:
POST http://localhost/users
POST http://localhost/users/addUsers
或
GET http://localhost/users/1
GET http://localhost/users/findUser?id=1
我们可以看到第一个强调资源的表达,第二个更注重行动。
因此,如果你的webapi应该遵循宁静的架构,也许你应该省略action.Anyway,如果没有,使用模板作为" / controller / action"也是一个好方法。