2016-08-19 6 views
2

これは本当に奇妙です。私はアプリでAngularJSを使用しています。ログイン中、私はHTTP POSTリクエストを行います。データが正しく送信され、適切な応答が得られます。ログインページに戻ってログアウトするとログアウトしますが、同じhttp reqを実行しますが、データは投稿要求によって送信されません。 console.logには、$ scopeデータが正しいことがわかります。ちょうどPOSTデータが送信されていません。 ログインページをきれいにリフレッシュすると、再び動作します。だから私の問題は、リフレッシュせずに連続した要求が行われていないということです。誰もが同じような問題に遭遇し、答えを発見した場合にそれをここに掲示AngularJS - 最初のリクエストが成功した後にPOSTリクエストがデータを送信しない

$scope.logout = function() { 
     sessionStorage.clear();   
     $location.path("/login"); 
    } 
+0

これはおそらくひどい答えですが、var request = nullを入力してください。それは何とか正しく解決されない約束と関係しているでしょう。 –

+0

これでうまくいかなかった:( –

+0

$ scope、すなわち$ scope.loginDataでthis.loginDataにアクセスしてみてください –

答えて

0

-

$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); 
     }); 
    } 

そして、これが私のログアウト機能である - ここに私のログイン機能があります。 コンテンツタイプのヘッダーを設定すると、次のようになります。

var request = $http({ 
      method: "POST", 
      url: URL + "login", 
      crossDomain: true, 
      headers: { 
       "content-type": "application/json" 
      }, 
      data: this.loginData 
     }); 
関連する問題