我看到了一些奇怪的东西。这仅在 POST 呼叫的第一个实例上发生。随后的重复请求(重新提交表单时)工作正常。
第一个$http帖子落入 .then --> 错误函数,即使对服务的后端调用端到端成功(状态 -1)。重做相同的请求完全符合 .then -->成功路径。
我正在使用角度ng-view,ng-route和ng-controller构造来线程我的应用程序。
感谢您的帮助。
$http({
url: "/api/v1/login",
method: "POST",
headers: { "Content-Type": "application/json" },
data: {
username: uname,
password: pword
}
})
.then (
function (success) {
$scope.content = success.data;
if ($scope.content.status == "Login successful") {
window.location.href="/apps/home.html";
} else {
alert("Login failed");
window.location.href="#login";
};
},
function (error) {
alert("Call error = " + error.status);
window.location.href="#login";
}
);
将原始window.location
方法替换为 AngularJS $location
服务。从$q
服务实现处理程序内部调用window.location
通常会导致 AngularJS 内部错误。
有关更多信息,请参阅 StackOverflow:使用 angular js 登录和$http请求
想关闭这个循环。我的问题是 HTML 表单中的 Action="#"。删除它,问题消失了。