使用AngularJS提交登录

使用AngularJS提交登录,angularjs,spring,login,form-submit,Angularjs,Spring,Login,Form Submit,我想避免使用,因此 <form action="./login" method="post"> <input type="text" placeholder="Username" name="username"> &nbsp; <input type="password" placeholder="Password" name="password"> <input type="submit" value="Login"> <

我想避免使用
,因此

<form action="./login" method="post">
  <input type="text" placeholder="Username" name="username"> &nbsp;
  <input type="password" placeholder="Password" name="password">
  <input type="submit" value="Login">
</form>
当我使用表单时,请求被发送到Spring框架,并且可以完美地工作,但是当我使用Angular执行相同的操作时,它会给我一个错误
POSThttp://localhost:8080/login?username=admin&password=admin 404(未找到)


我必须做什么改变?我想拥有与提交完全相同的功能,因为在错误的凭证上,Spring framework会将我重定向到另一个视图。

我认为您不应该删除表单,而应该将其更改为纯angularjs表单(确保删除action属性)

像这样:

<form method="post" ng-submit="doLogin()">
  <input type="text" placeholder="Username" name="username"> &nbsp;
  <input type="password" placeholder="Password" name="password">
  <input type="submit" value="Login">
</form>

这样,您的angularjs表单的行为方式将与以前的代码相同。

我认为您不应该删除该表单,而应该将其更改为纯angularjs表单,并带有一个(确保删除action属性)

像这样:

<form method="post" ng-submit="doLogin()">
  <input type="text" placeholder="Username" name="username"> &nbsp;
  <input type="password" placeholder="Password" name="password">
  <input type="submit" value="Login">
</form>
这样,angularjs表单的行为方式将与以前的代码相同

<form method="post" ng-submit="doLogin()">
  <input type="text" placeholder="Username" name="username"> &nbsp;
  <input type="password" placeholder="Password" name="password">
  <input type="submit" value="Login">
</form>
$scope.doLogin=function(){
  var url = '/login';
  $http.post(url, {username: $scope.username, password: $scope.password}).then(function(msg){
    console.log(msg);
  });    
}