文件夹访问权限?"/>
登录后如何授予文件夹访问权限?
这是我的文件夹结构:
/ +-首页+-公共
我的node.js入口点位于“公共”文件夹(即public / server.js)中。
我的要求是所有用户都必须先登录才能访问“ home”文件夹。登录表单存储在public / index.html文件中。
出于测试目的,我将index.html放在“ home”文件夹中。
很遗憾,登录后我一无所获。
你能告诉我是什么问题吗?
这是我的登录表单(即public / index.html)。
<html>
<head>
<meta charset="UTF-8">
<title>Chat Room</title>
</head>
<body>
<form method="post" action="/login">
Nick name/Alias:<input type=text required name="alias"><br>
Email Address:<input type=email required name="email"><br>
<input type="submit" value="Login">
</form>
</body>
</html>
这是我的server.js代码:
var bodyParse = require('body-parser')
var cookieParser = require('cookie-parser');
var express = require('express');
var session = require('express-session');
var app = express();
var userList={};
var http = require('http');
var serverPort = 81;
server = http.createServer(app);
server.listen(serverPort, function() {
console.log('server up and running at %s port', serverPort);
});
var io = require('socket.io')(server);
app.use(bodyParse.urlencoded({extended:false}));
app.use(bodyParse.json());
app.use(cookieParser());
app.use(session({
secret: 'my secret',
resave: true,
saveUninitialized: true
}));
app.use(express.static('public'));
app.post('/login', function(request, response) {
var alias = request.body.alias;
var email = request.body.email;
if (userList[email]==null) {
request.session.loggedin = true;
request.session.alias=alias;
request.session.email=email;
response.redirect('/home');
} else {
response.send("<script>alert('Your email address has been used, please use anothe one.');location.href='/';</script>");
}
});
app.all('/home', function(request, response,next) {
if (request.session.loggedin) {
next();
} else {
response.send("<script>alert('Your have to login to view this page.');location.href='/';</script>");
}
response.end();
});
回答如下:对不起,我通过使用快速渲染方法解决了这个问题。
更多推荐
登录后如何授予文件夹访问权限?
发布评论