Je fais une application qui utilise Redis. Il fonctionne parfaitement sur mon ordinateur exécutant Ubuntu 12.04, mais sur CloudFoundry il me donne une erreur.Redis échec sur CloudFoundry avec NodeJS
Voici le code de l'application:
var
http = require("http"),
redis = require("redis"),
cf = require("cloudfoundry");
cf.cloud;
if (cf.redis["myredisservice"]) {
var rport = cf.redis["myredisservice"].credentials.port;
var rhost = cf.redis["myredisservice"].credentials.hostname;
} else {
var rport = 6379;
var rhost = "127.0.0.1";
}
http.createServer(function(req, res) {
var client = redis.createClient(rport, rhost);
res.writeHead(200, {"Content-Type": "text/html"});
client.on("error", function(error) {
res.write("Error: " + error);
});
res.write("Setting key 1<br>");
client.set("key1", "My 1st String!", redis.print);
res.write("Getting key1<br>");
client.get("key1", function(error, reply) {
res.write("Results for key1<br>");
res.write(reply);
client.end();
res.end();
});
}).listen(cf.port || 3000);
Sur CloudFoundry, quand je lance cette application, il me donne cette sortie:
Setting key 1
Getting key1
Error: Error: Ready check failed: ERR operation not permitted
Je peux confirmer que la connexion au service Redis en utilisant le port et le nom d'hôte spécifiés par CloudFoundry.
Donc je pense que son échec à cause d'une de ces commandes. :(
Quelqu'un peut-il me dire, pourquoi est cette erreur se produit
Merci:.. D
Hey Glenn, Cela fonctionne parfaitement: D –
Cela aiderait les nouveaux arrivants, si vous pouviez faire un guide pour utiliser Redis sur CloudFoundry en utilisant NodeJS puisque vous n'avez actuellement qu'un guide utilisant Ruby: D –
Content de vous aider! out http://blog.cloudfoundry.com la semaine prochaine (peut-être t il suit) pour quelques nouvelles sur l'auto-configuration des services dans les applications node.js! –