Member 10481218 Ответов: 1

Как отправить данные из angularjs в web api в ASP.NET MVC 5 ?


у меня есть клиентское приложение и веб-api. я вызова веб-API от в AngularJS, но когда я отправить данные в AngularJS способ для веб-API пост, я получаю значение null.


я хочу, чтобы отправить объект в AngularJS для веб-API.

Что я уже пробовал:

у меня есть вызов web api из angularjs, но когда я передаю данные, он получает null в методе post

$scope.postdata = function (name, age, adress) {

var data = {

name: name,

age: age,

adress: adress

};

//Call the services

    $http.post('http://localhost/InovoTech.Services.DataBridge/api/users/postData',$scope.data,
        {
            headers: {
                'Content-Type': 'application/json'
            }
        }


    ).then(function (response) {

if (response.data)

$scope.msg = "Post Data Submitted Successfully!";

}, function (response) {

$scope.msg = "Service not Exists";

$scope.statusval = response.status;

$scope.statustext = response.statusText;

$scope.headers = response.headers();

});



[HttpPost]
[Route("postData")]
[ResponseType(typeof(Data))]
public IHttpActionResult PostUser(Data per)
{
    return null;
    //return CreatedAtRoute("DefaultApi", new { id = user.UserName }, user);
}

Saineshwar Bageri

Значение, которое вы публикуете из angularjs, похоже на модель (данные).
ВАР сведения = {
имя name,
возраст: возраст,
адрес: адрес
};
потому что если это не то же самое, то привязка модели здесь не будет работать.

1 Ответов

Рейтинг:
2

Sumanth Madireddy

Чтобы заставить Web API читать простой тип из тела запроса, добавьте атрибут [FromBody] в параметр:


[HttpPost]
[Route("postData")]
[ResponseType(typeof(Data))]
public IHttpActionResult PostUser([FromBody] Data per)
{
    return null;
    //return CreatedAtRoute("DefaultApi", new { id = user.UserName }, user);
}