针对restful API的Angular登录/认证
Angular login/authentication against restful API
我在一个angular
应用程序中创建了一个基本的身份验证系统,该系统是根据硬编码凭据编写的-见下文:
app.js
/* global app:true */
/* exported app */
'use strict';
/**
* @ngdoc overview
* @name WebAppApp
* @description
* # WebAppApp
*
* Main module of the application.
*/
var app = angular
.module('WebAppApp', [
'ngAnimate',
'ngAria',
'ngCookies',
'ngMessages',
'ngResource',
'ngRoute',
'ngSanitize',
'ngTouch'
])
.config(function ($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'views/login.html',
controller: 'loginCtrl',
controllerAs: 'login'
})
.when('/home', {
templateUrl: 'views/home.html'
//controller: 'loginCtrl',
//controllerAs: 'login'
})
.otherwise({
redirectTo: '/'
});
});
login.html
<form ng-submit="submit()">
Username: <input type="text" id="username" ng-model="username" /><br>
Password: <input type="password" id="password" ng-model="password" /><br>
<input type="submit" value="Submit" />
</form>
login.js
'use strict';
//app global variable
//this is hte controller that handles post requests
app.controller('loginCtrl', function ($scope, $location) {
$scope.submit = function(){
var uname = $scope.username;
var password = $scope.password;
if($scope.username == 'admin' && $scope.password == 'admin'){
$location.path('/home');
} else {
alert('username or password is wrong');
}
};
});
这工作。我现在要做的是通过将数据发布到服务器/登录来检查api调用的用户名和密码,如果成功返回访问令牌,然后存储在cookie中。此时,用户可以访问应用程序的其余部分。
如果凭据失败,将进行for验证,从而阻止用户登录。
最好的方法是什么?
首先检查这个url
你的代码看起来像这样:
$scope.submit = function(){
$http.post('/login', {
username:$scope.username,
password:$scope.password
}).then(function(response) {
if (response.data=="ok") {
//Login was ok
$location.path("/home");
} else {
//Login was not ok
}
}, function(response) {
//Error happend, response.status or response.statusText have details
});
}
相关文章:
- 使用acess代币登录Facebook,并通过网络应用程序离线发布
- 尝试使用Phonegap进行php登录
- Facebook登录按钮没有'不能在Firefox上工作
- 使用javascript反复检查用户在facebook上的登录状态
- Firebase-登录时获取url
- BrowserId登录请求在文档加载时被调用
- 通过iframe登录到远程站点
- Jquery Modal表单登录与AJAX-ASP经典上的IE 9
- 如何使用js自动登录
- 我尝试在登录脚本中使用ajax,但页面不会重定向
- 如何仅在首次登录时显示弹出窗口
- 如何检查用户已经登录facebook
- Express-stormpath登录不适用于通过电子邮件认证的用户
- AWS Cognito未认证登录错误(窗口未定义)[JS]
- 快递和护照错误:未知的认证策略“登录”
- Facebook登录认证对话框和权限
- 认证登录超时
- 使用angularjs登录时的Ionic认证
- 针对restful API的Angular登录/认证
- Firebase项目导致“认证/网络请求失败”;登录错误