2
這真的很奇怪。我在我的應用程序中使用AngularJS。在登錄期間,我發出HTTP POST請求;數據發送正確,我收到正確的答覆。然後,我註銷 - 這將我返回到登錄頁面 - 並執行相同的http req,但數據不是由發佈請求發送的。在console.log中我看到$ scope數據是正確的 - 只是POST數據沒有被髮送。 如果我對登錄頁面進行了硬刷新,它會再次運行。所以我的問題是連續的請求沒有被刷新。這裏是我的登錄功能 -AngularJS - POST請求在第一次請求成功後不發送數據
$scope.login = function() {
var request = $http({
method: "POST",
url: URL + "login",
crossDomain: true,
data: this.loginData
});
request.success(function(data) {
var response = angular.fromJson(data);
if(!response["error"]) {
sessionStorage.email = response["email"];
sessionStorage.password = response["password"];
sessionStorage.userId = response["id"];
$location.path('/dashboard');
} else {
$scope.responseMessage = response["message"][0];
}
});
request.error(function(data) {
console.log(data);
});
}
這是我的註銷功能 -
$scope.logout = function() {
sessionStorage.clear();
$location.path("/login");
}
那麼這可能是一個可怕的答案,但在頂部只是把var request = null;這將與承諾沒有得到妥善解決有關。 –
沒有工作:( –
嘗試通過$ scope訪問this.loginData,例如$ scope.loginData –