Привет Я использую redis в приложении node.js для кэширования пользователей. После того, как пользователь выполнил вход в систему, информация пользователя кэшируется и получает доступ к каждому другому запросу, чтобы определить, какой доступ пользователь имеет, и клиент получает информацию, представления и т. Д. На основе этого. Теперь приложение создает redisClient в начале и передает его на необходимые вызовы экспресс-маршрута (что почти все из них). Честно говоря, мне не очень нравится дополнительный аргумент, который передается повсюду - особенно, когда это то же самое. Есть ли лучший способ сделать это, и, например, если я инициализацию redisClient в каждом модуле он будет иметь дополнительные накладныеКлиент Redis в отключенном приложении node.js
var express = require('express'),
loginFunctionality = require('./routes/login'),
homeFunctionality = require('./routes/home')
...
// Connect to redis
var redisClient = redis.createClient();
redisClient.on("error", function(err){
console.log("An error occurred with redis:" + err);
});
...
app.get('/', homeFunctionality.home);
app.post('/register', loginFunctionality.createNewUser);
app.post('/login', loginFunctionality.login(redisClient, secret));
...
, что я интересно, если есть хороший способ, чтобы удалить redisClient параметр.
пожалуйста, поместите образец кода ... ваш вопрос не ясно – hussam