如何使用JavaScript将JSON从Razor页面发送到MVC.NETCore中的控制器
我有一个razor页面,其中包含以下获取JSON对象的JavaScript代码。从这段代码中,如何将JSON对象发送到控制器?(MVC Core.NET 3.0) 我现在觉得这听起来很疯狂-我这么做的唯一原因是为了演示Charles Proxy培训项目-我已经编写了一个控制器,可以从API获取JSON数据-问题是Charles Proxy只能在本地运行应用程序的情况下截获数据-在培训过程中,课堂上的其他人将无法做到这一点,因此,我需要通过客户端获取JSON对象并将其发送到服务器 提前非常感谢:-)如何使用JavaScript将JSON从Razor页面发送到MVC.NETCore中的控制器,javascript,.net,json,asp.net-core-mvc,Javascript,.net,Json,Asp.net Core Mvc,我有一个razor页面,其中包含以下获取JSON对象的JavaScript代码。从这段代码中,如何将JSON对象发送到控制器?(MVC Core.NET 3.0) 我现在觉得这听起来很疯狂-我这么做的唯一原因是为了演示Charles Proxy培训项目-我已经编写了一个控制器,可以从API获取JSON数据-问题是Charles Proxy只能在本地运行应用程序的情况下截获数据-在培训过程中,课堂上的其他人将无法做到这一点,因此,我需要通过客户端获取JSON对象并将其发送到服务器 提前非常感谢:-
var xhr=new XMLHttpRequest();
变量url=”https://cors-anywhere.herokuapp.com/https://www.511virginia.org/data/geojson/icons.rwis.geojson";
xhr.onreadystatechange=函数(){
如果(xhr.readyState==4&&xhr.status==200){
var jsonData=JSON.parse(xhr.responseText);
showWeather(jsonData);
}
};
xhr.open(“GET”,url,true);
xhr.send();
函数showWeather(数据){
var输出=“”;
var i;
//验证obj是否有数据
//for(data.features中的var i){
//输出+=“- ”+数据.features[i].id+“
”;
//}
输出+=“
”;
document.getElementById(“wxList”).innerHTML=输出;
}
在视图/razor/.csthml页面中:
$.ajax({
url: '/Home/Wx/',
data: JSON.stringify(data),
type: 'POST',
traditional: true,
contentType: 'application/json',
success: function (data) {
$('#message').html("Success!");
}
});
对于控制器:
[HttpPost]
public IActionResult Wx([FromBody] RootObject data)
{
// Do some work here
return View();
}
这对我很管用。干杯谢谢大卫,对不起-接得好:-)
[HttpPost]
public IActionResult Wx([FromBody] RootObject data)
{
// Do some work here
return View();
}