我應該如何重定向或寫東西了未經授權的用戶在我的應用程序重定向如果express.js沒有cookie,並socket.io
我想重定向頁面,如果沒有Cookie中定義或Cookie值是空
這裏是我的腳本,我指定了我的想法,我應該添加一些東西。
var express = require('express'),
app = express(),
memcache = require("memcache"),
http = require('http'),
server = http.createServer(app),
io = require('socket.io').listen(server),
co = require("./cookie.js"),
codein = require("node-codein");
//check if user loggedin
// routing
app.get('/', function (req, res) {
res.sendfile(__dirname + '/index.html');
});
io.configure(function(){
io.set('authorization', function (data, accept) {
var cookieManager = new co.cookie(data.headers.cookie);
var client = new memcache.Client(11211, "localhost");
client.connect();
client.get("sessions/"+cookieManager.get("sec_session_id"), function(error, result){
if(result){
var session = JSON.parse(result);
user = JSON.parse(session.name);
user = user.username;
}
if (typeof result === 'undefined' || (!result)) {
//------------> here if no cookie redirect to noaccess.html or just write you have no access to this page
return accept('No cookie transmitted.', false);
} else {
//------------> here if there is cookie then let users to see index.html
data.sessionID = cookieManager.get("sec_session_id");
accept('cookie recieved', true);
}
io.on('connection', function(socket) {
//console.log(socket.handshake.sessionID);
});
});
});
});
server.listen(3000);
我tryed一切,但沒有運氣提前這個
感謝...
恕我直言,你不應該允許socket.io連接沒有餅乾,也可以使用一些授權插件來表達,如[護照](http:// passportjs。 org /) – drinchev
@drinchev我沒有允許沒有任何cookie,如果你看到我解析Cookie模塊親愛的drinchey ..我只是想知道如何重定向或打印頁面中的東西,如果沒有cookie存儲我用戶PC – HiDd3N