c# - 错误请求 whenFromBody mvc core2.2 dosent 工作
问题描述
fromBody 在 Web mvc Core 2.2 中不适用于 Post In Postman 我正在尝试发布一些数据。我已经尽可能简单了;
我看到错误 400 错误请求
var UserVmodl =
{
In_User_Name:'',
In_Family :$("#Family").val(),
User_Name :$("#Name").val()
In_National_Code :$("#National_Code").val(),
In_Birth_Date_sh :$("#dateBirth_Date").val(),
In_Email:$("#Email").val()
}
$.ajax({
url: '@Url.Action("SaveUser", "PersonalInfo")',
type: 'POST',
data: JSON.stringify(UserVmodl ),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
async: true,
beforeSend: function (request) {
sendRequestVerificationToken(request);
},
success: function (data) { localSuccess(data); onSuccessFunc(data); }
});
[Route("PersonalInfo")]
[Area("client")]
public class PersonalInfoController : Controller
{
[HttpPost]
[Route("save")]
public IActionResult SaveUser([FromBody] PersonalInfo UserVmodl)
{
//var Result= _IUserService.UpdateUser(UserVmodl);
return View();
}
}
解决方案
如果您需要添加防伪验证,请尝试从标头发送 RequestVerificationToken。
$.ajax({
url: '@Url.Action("SaveUser", "PersonalInfo")',
type: 'POST',
headers : {
RequestVerificationToken:
$('input:hidden[name="__RequestVerificationToken"]').val()
},
data: JSON.stringify(UserVmodl),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
async: true,
success: function (data) { localSuccess(data); onSuccessFunc(data); }
});
请记住@Html.AntiForgeryToken()
在您的表格中添加。此外,您需要返回 json 结果,因为您的 ajax 需要返回类型为 json。
推荐阅读
- python - 如何在 Django batch_create 操作中进行 on_conflict_replace 工作?
- xml - 从哈希表输入生成 xml 输出
- node.js - 在 IntelliJ 2020 中调试 node.js 代码时,看到错误:Error running 'app.js': com/sun/javafx/runtime/FXObject
- graphql - GitHub GraphQL 过滤器 多变量语言过滤器
- javascript - 使用 HTML5 和 CSS 创建高级烛台图表
- java - 模拟多个 ObjectMapper 值
- powershell - 如何获取用户使用 powershell 提交更改的 Azure devops git repo 文件夹名称(Azure devops REST API)
- bash - 在安装了 conda 的情况下编辑 .bash_profiles
- python - 继承方法不替换以前的方法 Odoo 12
- windows - 检测是否启用了 TESTSIGNING