अपडेट करें: नीचे मेरा उत्तर वास्तव में सही नहीं है। यह पता चला है कि जिस मुद्दे का मैंने नीचे उल्लेख किया है उसका समाधान वास्तव में अभी भी काम करता है। यह एक संयोग से अधिक है, आईएमओ, लेकिन आप ऐसा कुछ कर सकते हैं, और इसे काम करना चाहिए:
var redis = require('redis'),
client = redis.createClient('/tmp/redis.sock');
जैसा कि आप नीचे दिए गए कोड स्निपेट से देख सकते हैं, यह net.createConnection
. को पास हो जाएगा जो यूनिक्स सॉकेट से कनेक्ट होगा /tmp/redis.sock
।
पुराना उत्तर:
इस नोड_रेडिस/मुद्दों/204 के बारे में एक बंद समस्या है। ऐसा लगता है, सोचा, कि अंतर्निहित node.js net.createConnection API तब से बदल गया है। ऐसा लगता है कि यह node_redis' exports.createClient
में काफी छोटा सुधार होगा। समारोह:
exports.createClient = function (port_arg, host_arg, options) {
var port = port_arg || default_port,
host = host_arg || default_host,
redis_client, net_client;
net_client = net.createConnection(port, host);
redis_client = new RedisClient(net_client, options);
redis_client.port = port;
redis_client.host = host;
return redis_client;
};
ऐसा लगता है जैसे net.createConnection
एक यूनिक्स सॉकेट से कनेक्ट करने का प्रयास करेगा यदि इसे एक तर्क के साथ बुलाया जाता है, जो पथ की तरह दिखता है। मेरा सुझाव है कि आप एक सुधार लागू करें और एक पुल अनुरोध भेजें, क्योंकि यह समर्थन के लायक कुछ लगता है।