Terminal curl: (7) Failed to connect to localhost port 3000: Connection refused
Ich bin mit OSX Elcapitan, 10.11.6, wenn ich
curl localhost:3000
oder
curl localhost:3000 -4
oder
curl 0.0.0.0:3000
oder
curl -x "" "http://127.0.0.1:3000"
Er sagt immer:
curl: (7) Failed to connect to 127.0.0.1 port 3000: Connection refused
ruby -v
ruby 2.1.3p242 (2014-09-19 revision 47630) [x86_64-darwin13.0]
mein code:
var http = require('http'),
express = require('express'),
path = require('path'),
MongoClient = require('mongodb').MongoClient,
Server = require('mongodb').Server,
CollectionDriver = require('./collectionDriver').CollectionDriver;
var app = express();
app.set('port', process.env.PORT || 3000);
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({extended: false}));
var mongoHost = 'localHost';
var mongoPort = 27017;
var collectionDriver;
var url = 'mongodb://localhost:27017/mongo-server';
//Use connect method to connect to the server
MongoClient.connect(url, function(error, db) {
if (error) {
console.error(error.message);
process.exit(1);
}
console.log("Connected to MongoDB successfully.");
collectionDriver = new CollectionDriver(db);
});
app.use(express.static(path.join(__dirname, 'public')));
app.get('/', function (req, res) {
res.send('<html><body><h1>Hello World</h1></body></html>');
});
app.get('/:collection', function(req, res) {
var params = req.params;
collectionDriver.findAll(req.params.collection, function(error, objs) {
if (error) { res.send(400, error); }
else {
if (req.accepts('html')) {
res.render('data',{objects: objs, collection: req.params.collection});
} else {
res.set('Content-Type','application/json');
res.send(200, objs);
}
}
});
});
app.get('/:collection/:entity', function(req, res) {
var params = req.params;
var entity = params.entity;
var collection = params.collection;
if (entity) {
collectionDriver.get(collection, entity, function(error, objs) {
if (error) { res.send(400, error); }
else { res.send(200, objs); }
});
} else {
res.send(400, {error: 'bad url', url: req.url});
}
});
app.post('/:collection', function(req, res) {
var object = req.body;
var collection = req.params.collection;
collectionDriver.save(collection, object, function(err,docs) {
if (err) { res.send(400, err); }
else { res.send(201, docs); }
});
});
app.put('/:collection/:entity', function(req, res) {
var params = req.params;
var entity = params.entity;
var collection = params.collection;
if (entity) {
collectionDriver.update(collection, req.body, entity, function(error, objs) {
if (error) { res.send(400, error); }
else { res.send(200, objs); }
});
} else {
var error = { "message" : "Cannot PUT a whole collection" }
res.send(400, error);
}
});
app.delete('/:collection/:entity', function(req, res) {
var params = req.params;
var entity = params.entity;
var collection = params.collection;
if (entity) {
collectionDriver.delete(collection, entity, function(error, objs) {
if (error) { res.send(400, error); }
else { res.send(200, objs); }
});
} else {
var error = { "message" : "Cannot DELETE a whole collection" }
res.send(400, error);
}
});
app.use(function (req,res) {
res.render('404', {url:req.url});
});
http.createServer(app).listen(app.get('port'), function(){
console.log('Express server listening on port ' + app.get('port'));
});
- Was erwarten Sie beantworten Anfragen auf diesem port? Wie sieht Ihr Programm Aussehen? Wie haben Sie Ihr Programm starten?
- die Anwendung läuft auf diesem port.
- Überprüfen Sie bitte mein update-code oben. Danke.
- Hinweis: "0.0.0.0" ist nicht localhost...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sieht es aus wie Sie nicht starten Sie Ihren server, oder läuft es auf einem anderen port als den, den Sie erwarten.
Ist dies eine Rails-app
rails c
wird es gehen. Wenn es einige andere Rack-basierte Programm, das Sie benötigen, um es zu starten eine andere Art und Weise, wie mit Pow.