Можете ли вы с помощью фиддлера или почтальона проверить, что ваш вызов API возвращает то, что вы ожидаете? Как только вы сможете убедиться, что WebAPI возвращает действительный HttpStatus (от 200 до <400), вы можете проверить свой код переднего плана (angularjs). Вызовите webAPIHostName + '/ Website / InsertEmployee' и добавьте тело JSON (при условии его JSON) к вашему вызову скрипача. Измените метод на POST и включите в заголовок </p>
Content-Type: application / json
Если ваш ответ не соответствует вашим ожиданиям, попробуйте изменить возврат API с
* 1006. *
до
return Request.CreateResponse(HttpStatusCode.OK, employee);
Если вы можете убедиться, что ваш POST работает должным образом, проверьте ваш angularjs.
Что касается Angularjs, ваш http-вызов может быть обновлен до
angular.module('myApp').factory('websiteService', ['$http', function ($http) {
var insertEmployee;
insertEmployee = function (webAPIHostName, employee) {
return $http.post(webAPIHostName + '/Website/InsertEmployee', JSON.stringify(employee));
}
return {
insertEmployee: insertEmployee
};
}]);
// Angular Controller
var employee = {
EmployeeID: 1,
Name: 'Test',
Phone: '111-111-1111'
};
websiteService.insertEmployee($scope.webAPIHostName , employee)
.then(function (response) {
alert("Submitted Employee Successfully.");
//success response here
}, function (error) {
// error handling here
});