Я передаю данные из controller.js в service.js в SpringController.java
, но когда я передаю данные $ scope.credentials.uname в контроллер Java, происходит странная вещь.
Переданные данные идут в двойных кавычках.Когда я печатаю значение в Java, оно печатается как «ПОЛЬЗОВАТЕЛЬ» вместо ПОЛЬЗОВАТЕЛЬ.
Также из-за этого я не могу сохранить имя пользователя в базе данных.
$scope.submitUsername = function()
{
$log.info("username "+$scope.credentials.uname);
Здесь журнал печатается правильно. Chrome console
имя пользователя SYS_USER -> без двойных кавычек
loginService.fetchUserType(angular.copy($scope.credentials.uname)).then(function(data)
{
if (data.loginType == 'NotValidUsername')
{
$log.info("Failure")
toaster.pop('information', "Warning", 'Enter Valid UserName');
}
else
{
$log.info("Success")
if (data.loginType == 'database')
{
$scope.isExternalUser = true;
$scope.showSubmitButton = false;
}
else
{
$scope.isExternalUser = false;
$scope.showSubmitButton = false;
}
}
})
};
service.js
fetchUserType : function(userName)
{
var promise = $http({
url : "checkUserType.do",
method : "POST",
data : JSON.stringify(userName)
}).success(function(data, status, header, config, statusText)
{
}).error(function(data, status, header, config, statusText)
{
if(!status === 901)
toaster.pop('error', status, statusText);
}).then(function(response)
{
return response.data;
})
return promise;
}
Метод Java Controller
@RequestMapping(value = "/checkUserType.do", method = { RequestMethod.GET, RequestMethod.POST })
@ResponseBody
public Object checkUserType(@RequestBody String username,HttpServletRequest request)
{
log.info(" Inside checkUserType "+username);
User user = new User();
user.setUserName(username);
String userType = loginService.checkUserType(user.getUserName());
user.setLoginType(userType);
return user;
}
Вывод на консоль
Внутри checkUserType "SYS_USER".
Как передать данные так, чтобыя могу избежать, чтобы эти "" (двойные кавычки) передавались в Java Controller