如何从反应Js执行WEBAPI Post调用?

时间:2017-07-28 11:50:17

标签: reactjs asp.net-web-api

已经问过这个问题了。但我还是不清楚。 我必须在reactjs中调用WEBAPI的POST方法。但我已经在webapi中创建了模型。所以我想知道如何将模型数据传递给reactjs中的post调用。

型号:

public class EmployeeModels
{
    public int Id { get; set; }
    public string name { get; set; }
    public string mobile { get; set; }
    public string email { get; set; }
    public string dept { get; set; }
    public string erole { get; set; }
}

我的WEBAPI帖子方法:

   //Insert new Employee
    public IHttpActionResult CreateNewEmployee(EmployeeModels emp)
    {
        using (var ctx = new Employee())
        {
            ctx.tempemp.Add(new tempemp()
            {
                Id = emp.Id,
                name = emp.name,
                mobile = emp.mobile,
                erole = emp.erole,
                dept = emp.dept,
                email = emp.email
            });
            ctx.SaveChanges();
        }
        return Ok();
    }

现在我想从reactjs发布Employeemodel。请提出任何建议。

2 个答案:

答案 0 :(得分:3)

我已经给出了答案:

let employee={
    Id:1,
    name:'abc',
    mobile:123456,
    email:'abc@abc.com',
    dept:'IT',
    role:'Developer'
}

fetch('https://mywebsite.com/CreateNewEmployee/', {
  method: 'POST',
  headers: {
    'Accept': 'application/json',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify(employee)
})
.then(function(resp){
    // your response
})

答案 1 :(得分:0)

您可以使用axios库。

npm install axios --save

然后:

axios.post('/CreateNewEmployee/', {
    Id:1,
    name:'abc',
    mobile:123456,
    email:'abc@abc.com',
    dept:'IT',
    role:'Developer'
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });