【发布时间】:2016-10-06 04:18:43
【问题描述】:
我正在尝试从我的服务器向客户端获取“成功”或“失败”响应。服务器在 express 框架中的 node.js 中实现,客户端在 angularjs 中实现。
这是服务器端 node.js 部分:
connection.connect();
/* GET home page. */
router.get('/', function(req, res, next) {
res.sendFile(path.join(__dirname, '../', 'views', 'login.html'));
});
router.get('/login', function(req,res)
{
console.log("Username:"+req.query.username);
console.log("Password:"+req.query.password);
var user = req.query.username;
var pass = req.query.password
connection.query("select * from user where login_name = ?", user, function(err, rows, fields) {
if (!err){
if(user==rows[0].login_name && pass==rows[0].pass){
console.log("success");
res.json({status: 200});
}
}
else
console.log('Error while performing Query.', err);
});
这里是 angularjs 部分:
<form name="login">
<div class="login" ng-app="loginPage" ng-controller="loginController">
<input type="text" placeholder="username" ng-model="uname" name="userid"><br>
<input type="password" placeholder="password" ng-model="pword" name="pswrd"><br>
<!--<input type="button" ng-click="login();" onclick="check(this.form)" value="Login"/>-->
<button ng-click="login();">Login</button>
</div>
</form>
<script language="javascript">
var app = angular.module('loginPage', []);
app.controller('loginController', function($scope, $http) {
console.log("inside controller");
$scope.login = function() {
console.log("inside the login function");
console.log($scope.uname);
var verify = $http({
method: 'GET',
url: '/login' +
'',
params: { username: $scope.uname, password: $scope.pword }
}).then(
function successful(response) {
$scope.theResponse = response.data;
window.open("./team_list.html")
}, function unsuccessful(response) {
alert('Wrong username/password.');
$scope.theResponse = response.data;
});
}
})
</script>
我尝试在浏览器的登录页面上为用户名输入“test”,为 pw 输入“test”,因为这是我在我的 sql 数据库中输入的内容。具体来说,我不确定为什么登录页面没有链接到我为其指定路径的 team_list 页面。
我不确定为什么它不起作用。如果我应该以不同的方式使用 json,我将不胜感激,因为我对它不是很熟悉。
【问题讨论】:
-
为什么要将 http 调用分配给变量“verify”
-
你从服务器端得到了什么?您可以通过查询获取用户详细信息吗?
标签: javascript html angularjs node.js web-development-server