未标记 AcceptVerbs、HttpGet 或 HttpPost 的控制器操作的默认行为是什么?
如果我创建一个控制器操作并且不使用 AcceptVerbs、HttpPost 或 HttpGet 来装饰它。默认行为是什么?
该操作是否允许任何访问方法或者默认为GET?
If I create a controller action and do not decorate it with AcceptVerbs
, HttpPost
or HttpGet
. What is the default behaviour?
Does the action allow any access method or does it default to GET?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
它可以通过任何动词访问。
It's accessible via any verb.
在 Web API 2.1 中:
这取决于操作的名称。如果操作以“Get*”开头,那么它将默认只接受 GET 请求。如果它以“Put*”开头,那么它将默认只接受 PUT 请求。与 POST 相同。
如果它不以任何已知动词开头,那么它将默认只接受 POST。
以下是我的测试结果:
In Web API 2.1:
it depends on the name of the action. If the action starts with "Get*" then it will default to only accept GET requests. If it starts with "Put*" then it will default to only accept PUT requests. Same with POST.
If it doesn't start with any known verb then it will default to only accept POST.
Here are the results of my testing: