Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用JavaScript将JSON从Razor页面发送到MVC.NETCore中的控制器_Javascript_.net_Json_Asp.net Core Mvc - Fatal编程技术网

如何使用JavaScript将JSON从Razor页面发送到MVC.NETCore中的控制器

如何使用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对象并将其发送到服务器 提前非常感谢:-

我有一个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();
    }