将 POST ReactJs 获取到控制器 .Net Core

我在将 POST 获取到控制器时遇到问题,显示错误,如{"errors":{"":["Unexpected character encountered while parsing number: W. Path '', line 1, position 6."]},"title":"One or more validation errors occurred.","status":400,"traceId":"0HLOGKVEBUTKL:00000007"}. 当我也调试时,在我的控制器中它没有传递给控制器。

这是我发布的内容

http://img1.mukewang.com/611f8ed2000135bc03530410.jpg

http://img4.mukewang.com/611f8edb00011bdc04010389.jpg

我在客户端使用 ReactJs,在服务器端使用 Net Core。这是我的代码片段:


添加列表.js


 fetch('api/SampleData/AddEmployee', {

   method: 'POST',

   headers: {

     'Accept': 'application/json; charset=utf-8',

     'Content-Type': 'application/json;charset=UTF-8'

   },

   body: data,

 }).then((response) => response.json())

 .then((responseJson) => {

   console.log('Success:', JSON.stringify(responseJson));

   this.props.history.push("/list-data");

 })

   .catch(error => console.error('Error:', error));

示例数据控制器.cs


[HttpPost("[action]")]

public JsonResult AddEmployee(EmployeesViewModel employee)

{

}

Starrup.cs


 app.UseMvc(routes =>

 {

   routes.MapRoute(

     name: "default",

     template: "{controller}/{action=Index}/{id?}");


   routes.MapRoute(

     name: "api",

     template: "api/{controller}/{action}/{id?}");

 });


偶然的你
浏览 197回答 2
2回答

哆啦的时光机

你不需要这个配置   routes.MapRoute(     name: "api",     template: "api/{controller}/{action}/{id?}");而是像这样在控制器中使用路由[Route("api/[controller]/[action]")]public class YourController : Controller
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript