gpt4 book ai didi

javascript - 如何在 .net 核心应用程序中使用 post 方法将 javascript 值传递给 Controller ​​?

转载 作者:行者123 更新时间:2023-11-29 10:05:16 25 4
gpt4 key购买 nike

我正在开发 .net 核心应用程序。我需要使用 Post 方法将 java 脚本值传递给我的 Controller 。我正在使用 java 脚本代码如下

 data = {'imageValue':'some test'}
$.ajax({
type: 'Post',
url: '/Home/UploadData',
dataType: 'json',
contentType: 'application/json',
data: data,
success: function (data) {
alert(data);
console.log('sample');
},
error: function(){
}
});

我的 Controller 是 [HttpPost]public string UploadData([FromBody] string imageValue)
{return imageValue;}
但 imageValue 总是返回 null。如果我的代码有任何错误,请解决问题。

最佳答案

当您进行ajax 调用时,您应该将javascript 对象字符串化并发送它。您可以使用 JSON.stringify 方法将 js 对象转换为等效的 JSON 字符串。

var data = {'imageValue':'some test'}
$.ajax({
type: 'Post',
url: '/Home/UploadData',
dataType: 'json',
contentType: 'application/json',
data: JSON.stringify(data),
success: function (data) {

console.log('sample', data);
},
error: function(){
}
});

现在,由于 ajax 调用正在请求正文中发送数据(因为它是 POST 请求),您需要使用 [FromBody] 属性修饰 HttpPost 操作方法参数,以便模型绑定(bind)器知道它应该从中读取数据请求正文并映射到方法参数 (YourViewModel) 对象。

public IActionResult UploadData([FromBody] YourViewModel d)
{
return Json(d);
}

关于javascript - 如何在 .net 核心应用程序中使用 post 方法将 javascript 值传递给 Controller ​​?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44678571/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com