2017-04-05 81 views
0

如果用戶在數據庫中得到驗證,那麼我有一個返回json字符串的服務:{「IsExisting」:「true」}。然而,如果我把正確的憑據代碼進入空條件的響應,而不是真實的條件。可能是什麼問題呢?值不會返回null,但會進入空值的條件內

這裏是我的controller.js代碼:

$scope.enterlogin = function(usern,pass) 
{ 
    console.log('username is = ' + usern); 
    loginService.getUser(usern,pass).then(function(response){ 
     console.log('user is = ' + response); 
     var obj = JSON.parse(response); 
     console.log('object is ' + obj['IsExisting'] ); 
     if(obj['IsExisiting'] == null) 
     { 
      alert('Account does not exist. Please check your credentials.'); 
     } 
     else 
     { 
      if(localStorage['firstTimeLoad']!='TRUE') 
     { 
      $scope.hide(); 
      localStorage['firstTimeLoad']='TRUE'; 
      $state.go('helpExtra'); 
     } 
     else 
     { 
      $scope.hide(); 
      $state.go('menu.mainMenu'); 
     } 
     } 
    }); 
} 

這裏是我的服務代碼:

//angularSoap Login 
.factory('loginService', ['$soap', function($soap){ 
var base_url = "http://localhost/UserService3/WebService1.asmx"; 

return { 
    getUser: function(usern,pass){ 
     console.log('code side usern is = ' + usern + "" + pass); 
     return $soap.post(base_url, "getUserbyUsername", { uname: usern, passw: pass}); 
    } 
} 
}]) 

,這裏是我的web服務代碼:

[WebMethod] 
    public string getUserbyUsername(string uname, string passw) 
    { 
     string cs = "Data Source =.; Initial Catalog = UsersDB; Integrated Security = True"; 
     using (SqlConnection con = new SqlConnection(cs)) 
     { 
      SqlCommand cmd = new SqlCommand("spGetUserByUsername", con); 
      cmd.CommandType = CommandType.StoredProcedure; 
      SqlParameter parameter = new SqlParameter(@"Username", uname); 
      SqlParameter parameter2 = new SqlParameter(@"Password", passw); 
      cmd.Parameters.Add(parameter); 
      cmd.Parameters.Add(parameter2); 
      User user = new User(); 
      con.Open(); 
      SqlDataReader reader = cmd.ExecuteReader(); 
      while (reader.Read()) 
      { 
       // user.Username = reader["Username"].ToString(); 
       // user.Password = reader["Password"].ToString(); 
       user.IsExisting = reader["IsExisting"].ToString(); 
      } 
      con.Close(); 

      return new JavaScriptSerializer().Serialize(user); 
     } 
    } 
+0

請粘貼您的服務代碼也 –

+0

@RahulArora粘貼代碼,感謝 –

+0

'的console.log( '對象' + OBJ [」 IsExisting']);'這個輸出是'true'? – Searching

回答

0

問題是與的拼寫您嘗試訪問您的對象的屬性。

應該

if(obj['IsExisting'] == null) 
{ 
    alert('Account does not exist. Please check your credentials.'); 
} 

,而不是

if(obj['IsExisiting'] == null) 
+0

謝謝你,我沒有看到。 –