2017-04-05 79 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

谢谢你,我没有看到。 –