我正在将登录凭证从angularjs发布到node js rest api。我在node js中的express服务器在https上运行,但是,当我在chrome开发人员工具中将凭据发布到身份验证api时,可以看到带有明文凭据的请求的有效负载。
我敢肯定,https上的信息应该采用加密形式,但是在这里我可以看到明文形式的请求有效载荷。
Auth.js(Angular JS)
var user = {
username: $scope.username,password: $scope.password
}
Auth.validatePassword(user)
Services.js(Angular JS)
var validatePassword = function (data) {
return $http({
method: "POST",url: "/api/validatepassword",data: data
})
.then(function (res) {
return res.data;
})
}
routes.js(节点JS)
app.post('/api/validatepassword',dbHandler.validatePassword);
dbhandler.js(节点js)
validatePassword: function (req,res,err) {
objPass = new getPassword(req.body.username);
objPass.then(function (data) {
var strPassword = crypt.encrypt(req.body.password);
if (strPassword != data[0].Password) {
var errMsg = {
Error : true
}
res.json(errMsg);
} else {
res.json(data);
}
},function (err) {
console.log(err);
})
}
index.js(节点JS)
var port = process.env.PORT;
var host = process.env.HOST;
https.createServer({
key: key,cert: cert
},app)
.listen(port,host);