我正在使用AngularJS,我想制作两个POST,第二个POST需要第一个POST的数据库ID。
例如:
假设第一个POST是一个具有两个参数的实体:“ID”和“Name”。我发送“名称”,ID在数据库中自动生成。这是代码:
var save;
$scope.entityA =
{
'Name': 'Some name'
};
$http.post(url, JSON.stringify($scope.entityA)).then(function (response) {
save = response.data;
console.log(save.Id); // this logs the correct ID;
}
);
然后我有第二个POST,其中一个参数是第一个POST的ID。像这样:
$scope.entityB =
{
'Title': 'Whatever',
'EntityA_Id': save.Id; // this doesn't work because it says "save" is undefined
};
$http.post(url, JSON.stringify($scope.execution)).then(function (response) {
console.log(response.data);
}
);
然而,这不起作用。如何对第一个实体进行POST,然后将其数据库ID用于第二个POST?
感谢。
答案 0 :(得分:1)
我怀疑你可能会在第一篇文章返回ID之前调用第二篇文章。试试这个:
$http.post(url, JSON.stringify($scope.entityA)).then(function (response) {
save = response.data;
callSecondPostMethod();
}