而在Ubuntu下尝试这个mongo命令,我得到这个错误。 ritzysystem@ritzysystem-Satellite-L55-A:~$ mongo MongoDB shell version: 2.6.1 connecting to: test 2014-10-06T12:59:35.802+0530 warning: Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused 2014-10-06T12:59:35.802+0530 Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed at src/mongo/shell/mongo.js:146 exception: connect failed 我怎么能纠正这是任何人有同样的问题。
我正在使用webpack和HtmlWebpackPlugin注入捆绑js和css到一个html模板文件。 new HtmlWebpackPlugin({ template: 'client/index.tpl.html', inject: 'body', filename: 'index.html' }), 它会生成下面的html文件。 <!doctype html> <html lang="en"> <head> … <link href="main-295c5189923694ec44ac.min.css" rel="stylesheet"> </head> <body> <div id="app"></div> <script src="main-295c5189923694ec44ac.min.js"></script> </body> </html> 当访问应用程序localhost:3000/的根目录时可以正常工作,但在尝试从另一个URL访问应用程序时失败,例如localhost:3000/items/1因为捆绑文件没有注入绝对path。 当html文件被加载时,它将在不存在/items目录内查找js文件,因为react-router尚未加载。 我怎样才能得到HtmlWebpackPlugin注入文件的绝对path,所以expression会寻找他们在我的/dist目录的根,而不是在/dist/items/main-…min.js ? 或者,也许我可以改变我的快递服务器来解决这个问题? app.use(express.static(__dirname + '/../dist')); app.get('*', function response(req, res) { res.sendFile(path.join(__dirname, '../dist/index.html')); }); 基本上,我只需要得到这一行: <script src="main…js"></script> 在源头开始时有一个斜线。 <script src="/main…js></script>
我使用了快速生成器来创build一个简单的快速应用程序,当在dev上启动时,在localhost:3000上运行良好。 当我使用eb command-git aws.push将它推送到弹性beanstalk时,我在生产服务器上得到了一个502错误。 看着日志,我得到的错误是: 2014/04/01 19:29:40 [error] 24204#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 172.31.2.178, server: , request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:8081/", host: "macenvexp-env-hqv9ucmzev.elasticbeanstalk.com" 2014/04/01 19:29:40 [error] 24204#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 172.31.2.178, server: , request: "GET /favicon.ico HTTP/1.1", upstream: "http://127.0.0.1:8081/favicon.ico", […]
当我尝试在terminal中运行“mongod”时出现以下错误。 我试过卸载,重新安装,然后重新启动机器。 任何关于如何让它工作的build议都会很棒。 错误: dbpath (/data/db) does not exist. Create this directory or give existing directory in –dbpath. See http://dochub.mongodb.org/core/startingandstoppingmongo 附注:在发生此错误的同时,节点也停止在我的计算机上工作。 events.js:72 throw er; // Unhandled 'error' event ^ Error: failed to connect to [localhost:27017] 任何帮助将非常感激!
我有一个Node.js / Express.js应用程序运行在我的服务器上,只能在端口3000上工作,我试图找出原因。 这是我发现的: 没有指定一个端口( app.listen() ),应用程序运行,但网页不加载。 在端口3001( app.listen(3001) )或任何其他未使用的端口上,应用程序将运行,但网页无法加载。 在端口2999,该应用程序抛出一个错误,因为别的东西正在使用该端口。 在端口3000,应用程序运行,网页加载正常。 我知道快速应用程序默认为端口3000.但奇怪的是,我的应用程序只运行时,我明确地使其在端口3000上运行( app.listen(3000) )。 我在/usr/bin/express第220行find了这个: app.set(\'port\', process.env.PORT || 3000); 这是按照前面的说法来做的:将端口设置为指定的值,如果没有指定则将端口设置为3000。 我怎样才能使我的应用程序工作在不同的端口,如8080或3001? 谢谢! 编辑:代码示例(非常简单的节点/快速应用程序) var express = require("express"); var app = express(); app.get('/', function(req, res){ res.send('hello world'); }); // Only works on 3000 regardless of what I set environment port to or how I set […]
我正在尝试使用nodejs和request [2]向Google QPX Express API [1]发出HTTP POST请求。 我的代码如下所示: // create http request client to consume the QPX API var request = require("request") // JSON to be passed to the QPX Express API var requestData = { "request": { "slice": [ { "origin": "ZRH", "destination": "DUS", "date": "2014-12-02" } ], "passengers": { "adultCount": 1, "infantInLapCount": 0, […]
我正在使用本教程构build一个使用Passport.js的身份validation系统。 我对passport.session()做了什么感到困惑。 玩过不同的中间件之后,我明白了express.session()是通过cookie向客户端发送会话ID的,但是我对passport.session()做了什么以及为什么需要除了express.session()。 以下是我如何设置我的应用程序: // Server.jsconfiguration应用程序并设置Web服务器 //importing our modules var express = require('express'); var app = express(); var port = process.env.PORT || 8080; var mongoose = require('mongoose'); var passport = require('passport'); var flash = require('connect-flash'); var configDB = require('./config/database.js'); //Configuration of Databse and App mongoose.connect(configDB.url); //connect to our database require('./config/passport')(passport); //pass passport for configuration app.configure(function() […]
它看起来像使用Express v3实现基本的HTTP身份validation是微不足道的: app.use(express.basicAuth('username', 'password')); 版本4(我使用4.2)删除了basicAuth中间件,所以我有点卡住了。 我有下面的代码,但它不会导致浏览器提示用户input凭据,这是我想要的(以及我想象的旧方法): app.use(function(req, res, next) { var user = auth(req); if (user === undefined || user['name'] !== 'username' || user['pass'] !== 'password') { res.writeHead(401, 'Access invalid for user', {'Content-Type' : 'text/plain'}); res.end('Invalid credentials'); } else { next(); } });
我正在玩Nodejs,并通过构build一个小的restAPI来expression。 我的问题是,设置代码状态以及响应数据的最佳做法/最佳方法是什么? 让我用一点代码解释一下(我不会把启动服务器所需的节点和expression式代码,只是所关心的路由器方法): router.get('/users/:id', function(req, res, next) { var user = users.getUserById(req.params.id); res.json(user); }); exports.getUserById = function(id) { for (var i = 0; i < users.length; i++) { if (users[i].id == id) return users[i]; } }; 下面的代码完美的工作,当发送邮递员的请求时,我得到以下结果: 正如你所看到的,状态显示200,这是OK的。 但这是做到这一点的最好方法吗? 有没有这样的情况,我应该自己设置状态,以及返回的JSON? 还是总是用快递处理? 例如,我刚做了一个快速testing,稍微修改了上面的get方法: router.get('/users/:id', function(req, res, next) { var user = users.getUserById(req.params.id); if (user == null […]
我试图build立一个使用node.js,express和passport.js的login机制。 login本身工作得相当不错,会话也很好地存储在redis中,但是在提示用户进行身份validation之前,将用户redirect到他所在的位置时遇到了一些麻烦。 例如,用户链接http://localhost:3000/hidden然后被redirect到http://localhost:3000/login但是我希望他再次被redirect到http://localhost:3000/hidden 。 这样做的目的是,如果用户随机访问一个页面,他需要首先login,他应该被redirect到/ login站点提供他的凭据,然后被redirect到他以前试图访问的网站。 这是我的login信息 app.post('/login', function (req, res, next) { passport.authenticate('local', function (err, user, info) { if (err) { return next(err) } else if (!user) { console.log('message: ' + info.message); return res.redirect('/login') } else { req.logIn(user, function (err) { if (err) { return next(err); } return next(); // <-? Is this line […]