【发布时间】:2018-12-25 04:57:27
【问题描述】:
在将现有的 Web API 2 应用程序移植到 ASP.NET Core 时,我注意到现在我们需要将 FromBodyAttribute 应用于操作方法的参数(带有 json 负载的 POST 请求):
[HttpPost]
public IActionResult([FromBody]MyComplexType parameter){ ... }
我已尝试搜索文档,但没有找到任何可以解释此决定背后的理由的内容。我确实找到了一个post,它说这样做是为了提高安全性(CSRF 场景)。
有人可以提供更多信息吗?
谢谢。
路易斯
【问题讨论】:
-
我记得在使用 webapi 2 时也想过类似的事情。这与原始/复杂类型有关。这里有一个帖子:stackoverflow.com/questions/24625303/… 和微软在这里发布:docs.microsoft.com/en-us/aspnet/web-api/overview/… - 希望对您有所帮助!
-
你好。我正在使用 asp.net 核心。使用 web api 2,无需将 FromBody 添加到复杂的参数类型...
-
这里是link 对 Andrew Lock 所指的 Damian 的解释。您使用的是 ASP.NET Core 2.1 吗?
-
谢谢柯克。更详细一点,但还不够……我的意思是,基本上,它和帖子说的一样……我很想看看他们在使用“旧" 绑定方法...
标签: asp.net-core csrf model-binding