angularjs 两个请求流程
angularjs two request flow
我的 angularjs 代码有问题。我编写了一个登录代码,但我需要通过电子邮件验证当前用户是否已存在于数据库中。我想向数据库发出两个请求。 (两个 $http)。一个是获取数据库中使用此电子邮件的用户数量,以验证这是否不同于零,另一个是如果使用该电子邮件的用户数量为零,则将其插入数据库,但我遇到了问题。请看我的代码:
I made a service to verify the user email in database
此代码运行,但警报调用错误。先调用 alert("test2"),然后调用 alert("test1"),但我先验证。
抱歉,我正在学习angular。这是我的问题!谢谢!
这是正常的,对 .then()
的调用是异步的,所以在您调用 .then()
的代码中,您调用了 API 并继续执行您的代码,这就是为什么它首先显示 "test2"。
尽量把alert("test2")
放在$location.path(...)
之前
当用户不存在时,您需要将对第二个请求的调用放在第一个 .then()
中
很好。 Thaks,但我还有问题。我需要我的函数在 "return false" 代码中停止到 运行。例如:
- 首先:验证是否存在使用所选电子邮件的用户。
- 其二:在数据库中添加用户
我看到我的代码是运行宁拳第二个选项。首先是将新用户保存在数据库中,其次是进行验证。如果 angular 是异步的,我该怎么做才能发出两个顺序请求?
我在等待 ;)
您需要将第二个服务器请求移到 .then() 处理程序中。由于它们的异步性质,当前代码只是几乎并行地执行两个服务器请求。
您正在寻找的是更接近于此的东西...
User.verificar($scope.cadastro.email).then(function(usuario){
if(usuario.existe == true){
//existing code
} else {
//make function call to insert user
}
});
我的 angularjs 代码有问题。我编写了一个登录代码,但我需要通过电子邮件验证当前用户是否已存在于数据库中。我想向数据库发出两个请求。 (两个 $http)。一个是获取数据库中使用此电子邮件的用户数量,以验证这是否不同于零,另一个是如果使用该电子邮件的用户数量为零,则将其插入数据库,但我遇到了问题。请看我的代码:
I made a service to verify the user email in database
此代码运行,但警报调用错误。先调用 alert("test2"),然后调用 alert("test1"),但我先验证。
抱歉,我正在学习angular。这是我的问题!谢谢!
这是正常的,对 .then()
的调用是异步的,所以在您调用 .then()
的代码中,您调用了 API 并继续执行您的代码,这就是为什么它首先显示 "test2"。
尽量把alert("test2")
放在$location.path(...)
当用户不存在时,您需要将对第二个请求的调用放在第一个 .then()
中
很好。 Thaks,但我还有问题。我需要我的函数在 "return false" 代码中停止到 运行。例如:
- 首先:验证是否存在使用所选电子邮件的用户。
- 其二:在数据库中添加用户
我看到我的代码是运行宁拳第二个选项。首先是将新用户保存在数据库中,其次是进行验证。如果 angular 是异步的,我该怎么做才能发出两个顺序请求?
我在等待 ;)
您需要将第二个服务器请求移到 .then() 处理程序中。由于它们的异步性质,当前代码只是几乎并行地执行两个服务器请求。
您正在寻找的是更接近于此的东西...
User.verificar($scope.cadastro.email).then(function(usuario){
if(usuario.existe == true){
//existing code
} else {
//make function call to insert user
}
});