Je travaille sur un site web dont le backend est réalisé en Java (hébergé par Spring) et le frontend géré par Javascript. Maintenant, j'ai réussi à envoyer du code du backend au frontend en utilisant un RestController mais je n'arrive pas à envoyer des données du frontend au backend. Pour être plus précis, j'essaie de créer un formulaire de connexion avec une validation backend.
Code de formulaire HTML :
<form ng-submit="login">
<input type="text" ng-model="form.username" placeholder="username">
<input type="password" ng-model="form.password" placeholder="password">
<input type="submit" value="Login">
</form>
Code de connexion Javascript :
function auth($scope, $http, AppSettings, $state) {
'ngInject';
$scope.form = {};
$scope.login = () => {
$http({
method: 'POST',
url: AppSettings.getApiUrl('/login'),
data: {
user: $scope.form.username,
password: $scope.form.password,
},
// data: {}
}).then(response => {
if (response) {
console.log(response.data);
localStorage.setItem('token', response.data.token);
$state.go('main');
}
}).catch(error => {
console.log(error);
});
};
}
Gestionnaire de connexion Java :
@RestController
public class LoginHandler {
private static final Logger log = LoggerFactory.getLogger(LoginHandler.class);
@RequestMapping("/login")
public void getLoginInfo(@RequestParam Map<String,String> requestParams) {
RestTemplate restTemplate = new RestTemplate();
User user = restTemplate.getForObject("http://localhost:3003/auth", User.class);
log.info(user.toString());
}
}