Я использую ASP.Net web api вместе с AngularJS для создания SPA. На этом шаге я пытаюсь получить значение из ответа HTTP post request, фактически сохраненного идентификатора последней записи. Я получаю соответствующий ответ, но не могу определить точный формат кода для извлечения значения id из ответа. Мне просто нужно знать точный формат, я попробовал response.value.data.id, но это не сработало для меня. Я также попробовал JSON.stringify(response), который не предоставляет объект значения в строке.
Здесь функция -
$scope.save = function () {
var Patient = {
name: $scope.PatientName,
age: $scope.PatientAge,
contact: $scope.PatientContact,
address: $scope.PatientAddress
};
var response = patientService.post(Patient);
console.log(response);
//$location.path('/patient/' + $scope.PatientContact);
}
И здесь http-запрос -
this.post = function (Patient) {
var request = $http({
method: "post",
dataType: "json",
url: "/api/PatientsAPI",
data: Patient
});
return request;
}
Функция $ http возвращает обещание вместо фактических данных.
Поэтому вместо var response = patientService.post(Patient);
Вы можете использовать
var id;
patientService.post(Patient).then(function(response){
console.log(response);
id = response.value.data.id; // might not be correct, adjust according to response;
});