Articles of 表示

Route.all()需要callback函数,但得到)=>,然后显示404错误

我最近开始看节点Js,我的问题是关于快速路由。 我有一个dishRouter.js: var express = require('express'); var dishRouter = express.Router(); var bodyParser = require('body-parser'); dishRouter.use(bodyParser.json()); dishRouter //.route('/dishes') .all('/dishes', function(req, res, next){ res.writeHead(200, {'Content-Type': 'application/json'}); next(); }) .get('/dishes', function(req, res, next){ res.end('will send all dishes to you'); }) .get('/dishes/:dishId', function(req, res, next){ res.end('will send the dish '+ req.params.dishId + ' to you'); }) .post('/dishes', function(req, res, […]

从不同目录运行节点应用程序会使静态文件夹变得有趣

这是我的项目结构的要点: / node_modules / 上市/ CSS / 的main.css 服务器/ 意见/ app.js 的package.json 这是我的超级简单的app.js: var express = require('express'); var app = express(); app.use('/public', express.static('public')); app.listen(3000, function(){ console.log('live at http://localhost:3000'); }); 现在 ,当我在根目录下,运行node server.app.js并加载url http://localhost:3000/public/css/main.css一切都按预期完成。 但是 ,当我在服务器/目录,运行node app.js ,并加载相同的url,我得到的错误Cannot GET /public/css/main.css 。 有没有办法让我解决这个问题,所以我可以从任何目录运行我的项目?

Uber API – 使用非开发人员login时invalid_grant

我正在使用Node-uber与Uber API进行通信。 我必须遵循以下代码(项目的示例代码几乎完全相同,密钥隐藏) var uber = new Uber({ client_id: 'XXXXXXXXXXXX', client_secret: 'XXXXXXXXXXXXX', server_token: 'XXXXXXXXXXXX', redirect_uri: 'https://localhost:3002/rides/callback', name: 'app name', language: 'en_US', sandbox: true }); router.get('/login', function(request, response) { var url = uber.getAuthorizeUrl(['request']); console.log(url); response.redirect(url); }); router.get('/callback', function(req, res, next) { uber.authorization({ authorization_code: req.query.code }, function(err, access_token, refresh_token) { if (err) { console.error(err); } else { […]

在Node.js api中提供JSON响应时防止caching

我有一个移动应用程序将定期从Node.js服务器拉一个JSON文件。 JSON响应是用随机值dynamic生成的。 它不应该被caching。 我试图阻止caching: app.get('/important.json', function(req, res) { res.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); res.setHeader("Pragma", "no-cache"); res.setHeader("Expires", 0); res.json(…); }); 但是,当移动应用程序重新加载JSON时,它仍然从服务器(从Fiddler观察)获得304 Not Modified响应。 有人可以build议反高速caching是否正确完成? 这是由于etag? 如果etag是问题,我可以专门为这个api /端点禁用etag吗?

将Express React Redux模板部署到Heroku的步骤

有限的Node和部署到Heroku的经验。 我已经使用这个样板build立了一些东西: https : //github.com/DimitriMikadze/express-react-redux-starter,但我不确定如何设置模板部署到Heroku。 任何基本的步骤将是超级有用的。 谢谢!

NodeJS MongoDB传递参数在聚合pipe道中

如何将parameter passing给聚合? 我得到的参数,并试图传递它使用$match运算符,但查询返回空数组: app.get('/api/:name', function(req, res){ var name = req.params.name; console.log(name); db.collection('coll').aggregate([{$match: {name: '$name'}}, {$unwind: { path: "$dates", includeArrayIndex: "idx" } }, { $project: { _id: 0, dates: 1, numbers: { $arrayElemAt: ["$numbers", "$idx"] }, goals: { $arrayElemAt: ["$goals", "$idx"] }, durations: { $arrayElemAt: ["$durations", "$idx"]}}}]).toArray(function(err, docs) { if (err) { assert.equal(null); } else { […]

有人可以帮我删除我的Db Sequelizelogging吗?

我已经尝试下面的代码看到它的趋势,但我不知道为什么它不工作 Posts.destroy({ where: { createdAt: { isAfter: "2016-09-11" } } }) 我想摧毁24小时后的post,所以我修改了上面的内容 Posts.destroy({ where: { createdAt: { isAfter: new Date() } } }) 我想在今天之后摧毁所有的post然后我去看看留下的post,但我仍然看到现有的post

使用快递服务器的文件

var express = require('express'), app = express(), db = require('./db'), bodyParser = require('body-parser'), controller = require('./controller'); app.use(express.static('../public')); app.get('/server', function (req, res) { console.log(__dirname); res.sendFile('/../client/index.html'); }); 我有这个快速服务器设置,但使用上面的代码时,我看到“无法GET /”当我查看localhost: portnumber 。 如果我将GET方法更改为: app.get('/', function(req, res) { res.sendFile(__dirname + '../client/index.html'); }); 我得到“C:\ Users \ TC \ Documents \ Desktop \ myapp \ multiplayerWebSite \ server \ client \ […]

NodeJS禁用caching

我现在学习NodeJS,我想用Mustache-express作为模板引擎(我想用它来代替Pug,因为我之前在FrontEnd上使用过它,我认为它是一个非常聪明和简单的模板系统)。 我使用nodemon来运行NodeJS服务器,并且它工作正常,每当我更改除视图以外的任何文件时,它都会重新启动。 当我更改视图文件中的任何内容时,只有当我重新启动NodeJS服务器时,才会在请求的响应中看到它。 我能做些什么? 我已经使用下面的代码生成了caching: app.disable('etag');

如何使用快递从单独的文件创build客户端的API?

我是新的nodejs,我想处理所有的路线和api从app / routes.js,我有路由器,我正在使用获取和发布的客户端。 我没有看到从服务器到客户端的任何反应与下面的代码,任何想法? app.js var express = require('express'); var app = express(); var server = require('http').createServer(app); var io = require('./app/io').initialize(server); var ditconsumer = require('./app/consumers/ditconsumer'); ditconsumer.start(server); server.listen(3000, function () { console.log('Example app listening on port 3000!'); //stconsumer.start(); }); 应用程序/ routes.js var express = require('express'); var router = express.Router(); var dirDirectory = require('./app/serverfiles/ditDir'); module.exports = function(app){ […]