Tag: 表示

Node.js快递jquery ajax请求不工作

使用REST风格的api,当我在我的浏览器中访问96.126.111.211/getLeaderBoard 它工作正常,并给我从我的mongo数据库的JSON数据。 虽然当我尝试像这样的http://jsfiddle.net/yVQ5T/ jquery ajax请求我得到一个jsonp错误 错误:没有调用jQuery171037622810900211334_1363808084624 这是服务器端的代码 getLeaderBoard(req, res) { this.db.collection(this.settings.userTable, function(err, collection) => { collection.find().toArray(function(err, items) { res.writeHead(200, {'Content-Type': 'application/javascript'}); res.write(JSON.stringify(items)); res.end(); }); }); }

我怎样才能访问express的uploadDir属性?

在express app.js中,我定义了uploadDir =“./tmp” ,但是如何在以后访问? app.configure(function(){ app.set('port', process.env.PORT || 3000); app.set('views', __dirname + '/views'); app.set('view engine', 'jade'); app.use(express.favicon()); app.use(express.logger('dev')); app.use(express.bodyParser({uploadDir:'./tmp', keepExtensions: true})); // <– app.use(express.methodOverride()); app.use(app.router); app.use(express.static(path.join(__dirname, 'public'))); });

NodeJS / Express:隐式地将自定义中间件的数据推送到渲染调用

我正在使用NodeJS / Express3。 我有一些自定义中间件,它根据cookie和URL从数据库中检索一些数据。 我想要访问基本模板中的这些数据(用于所有页面)。 我可以通过将数据附加到req ,然后使用res.render('template', {foo: req.foo, …page specific data…});来显式执行此操作res.render('template', {foo: req.foo, …page specific data…}); 我想使这隐含,所以当我添加(或删除)自定义中间件我不必改变每个渲染调用。 有没有一种方法可以使自定义中间件的数据可以呈现而不必将其添加到req中,并将其显式传递给每个呈现请求。 我正在使用LinkedIn的dust.js模板版本,但我认为问题是模板引擎不可知论者。

winston不在任何日志级别进行日志logging。 什么可能是错的?

我跑到一个奇怪的错误,不知道如何进行/debugging。 我有一个应用程序写在nodejs和使用Winston的日志logging。 一切正常,直到我昨天提出了一个新的生产服务器,并退休旧的。 我的prod服务器有4个nodejs进程正在运行。 在新的生产服务器上,winston会根据.js文件logging第一个日志消息。 期。 它在那之后停止logging。 更改日志级别不起作用。 我的应用程序已经得到了大约6个.js文件,并且在这些文件中包含任何错误,第一个错误信息被logging下来,但是没有logging任何后续的错误/警告/信息。 有趣的是Winston在旧的prod服务器上工作得很好,而dev服务器仍然正常工作。 我在开发和产品winston 0.6.2上。 据我所知,所有的sw软件包在dev和prod之间是一样的。 我不知道如何debugging这个问题。 任何帮助深表感谢。 –su

Node.js Express框架生成破损的app.js?

我是Node.js中的新成员,并希望使用Express来创build一个简单的应用程序。 npm install -g express npm install -g ejs express test -t ejs cd test/ npm install 现在我有一个应用程序框架。 但它被打破了。 例如我的app.js内容是 ,/**, * Module dependencies., */,,var express = require('express'), , routes = require('./routes'), , user = require('./routes/user'), , http = require('http'), , path = require('path');,,var app = express();,,// all environments,app.set('port', process.env.PORT || 3000);,app.set('views', __dirname + '/views');,app.set('view […]

使用Node.js将文件从string上传到Box API

我正在使用Box的API版本2并尝试上传文件。 我有Oauth 2所有的工作,但我无法实际上传。 我正在使用Node.js和Express,以及“请求”模块。 我的代码看起来像这样: request.post({ url: 'https://upload.box.com/api/2.0/files/content', headers: { Authorization: 'Bearer ' + authToken }, form: { filename: ????, parent_id: '0' } }, function (error, response, body) { // … }); 现在,我试图上传到根文件夹,如果我理解正确,具有“0”的ID。 我真的不知道的是什么值给“文件名”。 我没有一个真正的文件来读取,但我有一个冗长的string表示我想上传的文件内容。 我应该如何上传这个“文件”?

Socket.IO:推送到客户端组

我正在使用Express的Node.js服务器,并希望执行以下操作: 客户端调用带有ID的URL(例如localhost/show/:projectID ) 每个客户端调用相同的ID应该进入相同的“组” 新的消息只应该推送到同一个“组”中的客户端,而不是使用另一个ID调用一个URL的客户端 这怎么可以在Socket.IO中完成? (我已经阅读了“房间”,但我不知道如何与URL一起使用它们)

在expressjs中检测IE,但无法获取静态文件

我试图通过使用expressjs来检测IE,代码肯定会redirect到错误页面。 但问题是,它不会呈现的CSS文件,并在我的文件夹中获取图像文件。 我认为问题是expressjsredirect到error_page之前设置静态path。 所以我把app.all('*', ieRedirecter); 之后 app.use(express.static(path.join(__dirname, 'public'))); app.use(express.static(__dirname + '/uploads')); 问题仍然存在…有人可以帮我,谢谢! 我的设置 function ieRedirecter(req, res, next) { if(req.headers['user-agent'].indexOf("MSIE") >= 0) { var myNav = req.headers['user-agent']; var IEbrowser = parseInt(myNav.split('MSIE')[1]) if(IEbrowser < 9) { res.render('error/browser_error', {title : 'not supporting your browser'}) } else { next(); } } else { next(); } }; app.configure(function(){ app.set('port', process.env.PORT […]

将req和res显式添加到域不会传播错误来表示中间件

我在快递节点上玩弄域名和群集,并进入这种情况。 我有一个产生每个核心工作者的集群,对于每个工作人员,我创build一个使用每个请求域策略来处理错误的快速服务器。 下面给出的解决scheme可以正常工作,但是当显式地将请求和响应对象添加到域时,错误中间件将停止被调用。 我不知道为什么会引入这种行为。 问题: 为什么发生? 我是否以正确的方式使用域名? 我可以通过“process.domain”访问工作者当前的域吗?还是我需要做一些不同的事情? 提前致谢! 我的app.js: var express = require('express') , http = require('http') , path = require('path') , domain = require('domain') , cluster = require('cluster') , http = require('http') , numCPUs = require('os').cpus().length; if (cluster.isMaster) { // fork workers for (var i = 0; i < numCPUs; i++) { cluster.fork(); […]

具有Express和Mongoose的BasicAuth

我试图添加一个基本的身份validation到我的Expresspath。 要检查组合用户/传递是否正确,我读取MongoDB数据库中的集合usermodels。 这是我的代码: server.js var normal = express.basicAuth(normalAuth); app.get('path', normal, function(req, res){etc.}); function normalAuth(user, pass) { var mongo = require('./database/userManager'); var result = false; mongo.start(mongo.list(function(err, data) { if(err) { throw err; } else { console.log('Getting list from db…'); for(var i in data) { console.log('Getting details from db…'); if(user == data[i].name && pass == data[i].pass) { […]