POST 400(错误请求)错误
问题描述:
我的环境是低于POST 400(错误请求)错误
ASP.NET核2.0
下面是测试功能
[HttpPost]
[AllowAnonymous]
[ValidateAntiForgeryToken]
public ActionResult Test()
{
return RedirectToAction("Home");
}
我用邮递员发送POST数据 http://localhost:00000/test/test
总是有400个不好的请求...为什么?
[错误消息]
headers:Headers
ok:false
status:400
statusText:"Bad Request"
type:2
url:"http://localhost:57230/account/register"
_body:""
[更新] 我找到解决办法..但是有新的错误XD
headers:Headers
ok:false
status:500
statusText:"Internal Server Error"
type:2
url:"http://localhost:57227/account/register"
_body:
[更新] 解决...
答
我正面临类似的情况,其中表单POST被路由到正确的控制器,但然后控制器返回一个空页面(400错误)。控制器甚至没有执行任何代码。
问题似乎是以下几点:
如果你不把@Html.AntiForgeryToken()
只是在你的CSHTML的<form>
标签后,如果您使用[AutoValidateAntiforgeryToken]
或[ValidateAntiForgeryToken]
控制器将返回一个空的页面,没有输出或控制台的警告。
因此,它似乎可以防止通过HTML表单的跨站点或跨会话(?)攻击按预期工作。
+0
我发现了一种方式,我一起使用Angular :) 但无论如何感谢您的回答。 –
你能告诉我们你的发布数据吗? –
嗨,未来请让我们知道〜你怎么解决这个问题,这样任何人都可以获得关于这个问题和解决方案的更多信息。干杯。 – SaltySub