Tag: expression

Express.js + Less:如何正确configuration

我尝试了模块“less”和“less-middleware”。 我尝试了所有教程中find的所有不同的代码片段。 没有可用的文档。 有人可以请解释如何configurationExpress.js和更less,以便更less的正确预编译?! 使用以下问题作为指导: 你可以使用'less' 模块还是'less-middleware'模块? 什么是官方/支持的方式? 什么是优越? /public 目录结构应该如何? (你需要的任何特定文件夹?'style'/'less'/'css'?还是由你自己决定?) 如何configuration您的快速应用程序有关您的目录结构(从问题2)。 (静态文件和编译器选项或更less的中间件,这里什么目录是重要的) 如何从HTML中引用我的预编译样式表 ? (用.less或.css?什么引用types?什么目录path?) 如果有人可以回答这个问题,那会很好:-)

dynamic数据Express.JS的caching控制

如何在express.js中设置json响应中的cach-controll策略? 我的JSON响应根本没有改变,所以我想积极caching。 我发现如何对静态文件进行caching,但找不到如何在dynamic数据上进行caching。

使用Express JS .all()方法:检测哪个VERB被实际使用

我将创build一个/api端点,盲目地将请求和响应来回传递给传统的RESTful API系统(用Ruby编写,托pipe在不同的域上)。 这是一个中介的过渡阶段,所以应该只是工作。 所以,我看到app.all()可以轻松实现。 但是,由于API是RESTful,我还必须维护用于请求的HTTP动词 – 因此,我可以从req对象中检测到它吗? 如果没有,当然我可以订阅5个处理程序的GET,PUT,POST,DELETE,OPTIONS,但是要避免这个好多了。 另外,我该如何处理请求体(查询string和有效载荷)? 我假设我需要手动重新创build查询string从parsingreq.query和传递req.body request https://github.com/mikeal/request是 – 是吗?

AngularJS,Node.js,ExpressJS应用程序集成问题

我已经使用Node.js和ExpressJS创build了一个RESTful服务。 现在我想实现View部分。 为此,我select了AngularJS。 这里的问题是,我不知道如何组织文件夹结构,以及如何整合AngularJS与Node.js和ExpressJS。 我观看了这个video,但是没有示例源代码可用。 让我们来获取CRUDdy:AngularJS和Node.js Ferrari示例 项目文件夹结构 ExpressJS文件 var express = require('express'), http = require('http'), path = require('path'), photos = require('./routes/photos'); var app = express(); app.configure(function () { app.use(express.logger('dev')); /* 'default', 'short', 'tiny', 'dev' */ app.use(express.bodyParser()); app.use(app.router); }); app.get('/photos', photos.findAll); app.get('/view1', photos.index); AngularJS: // Declare app level module which depends on filters, and services […]

当在AWS负载均衡器后面运行时,如何将node.js / express.js强制转换为HTTPS

我正在AWS上运行一个节点/快速服务,并在它之前部署了一个ELB。 当启用启用SSL的ELB实例时,它会在我点击的第一个页面上工作,然后在每个服务器访问之后切换到HTTP。 ELB上的路由规则终止SSL并转发到节点正在监听的端口8080。 SSLterminal解决scheme对于我的目的来说工作正常,但是如何保持HTTPS上的后续服务器调用?

Node.js + Express.js。 如何渲染较less的CSS?

我无法在我的快速工作区中呈现较less的CSS。 这是我目前的configuration(我的css / less文件在'public / stylo /') : app.configure(function() { app.set('views' , __dirname + '/views' ); app.set('partials' , __dirname + '/views/partials'); app.set('view engine', 'jade' ); app.use(express.bodyDecoder() ); app.use(express.methodOverride()); app.use(express.compiler({ src: __dirname + '/public/stylo', enable: ['less']})); app.use(app.router); app.use(express.staticProvider(__dirname + '/public')); }); 这是我的main.jade文件 : !!! html(lang="en") head title Yea a title link(rel="stylesheet", type="text/css", href="/stylo/main.less") link(rel="stylesheet", href="http://fonts.googleapis.com/cssfamily=Droid+Sans|Droid+Sans+Mono|Ubuntu|Droid+Serif") script(src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js") […]

NodeJS + Express – 将会话中间件应用于某些路由

我有一个快速的应用程序与一些路线,只有两个需要支持会议。 我到处读到中间件定义(app.use(express.session({…)仅适用于后面的路由,所以我创build了这个示例: var express = require('express'); var app = express(); app.use(express.bodyParser()); app.get('/path1', function (req, res) { res.send('text response'); }); app.use(express.cookieParser()); app.use(express.session({ secret: 'secret', cookie: { maxAge: new Date(Date.now() + 2 * 60 * 1000) } })); app.get('/path2', function (req, res) { res.session.test = { "test": "test" }; res.send('text response'); }); app.listen(8088); 但是这不起作用:in / path2 res.session是未定义的。 […]

Node.js Express路由命名和sorting:如何确定优先级?

假设我的Express应用程序有几条GET路线: // music albums app.get('/api/albums', routes.albums.getAlbums); app.get('/api/albums/:id', routes.albums.getAlbum); app.get('/api/albums/artwork', routes.albums.getAlbumArtwork); 我尝试使用下面的jQuery AJAX代码片段来触发它们: $("#retrieveAlbumArtwork").on("click", function() { $.ajax({ url: "api/albums/artwork", type: "GET", data: { artist: $("#albumArtist").val(), title: $("#albumTitle").val() }, // … callbacks and such 出于某种原因,这个调用命中第二个处理程序,使用/:id参数,而不是显式/artwork路线。 像这样交换它们使其function如预期的那样: // music albums app.get('/api/albums', routes.albums.getAlbums); app.get('/api/albums/artwork', routes.albums.getAlbumArtwork); app.get('/api/albums/:id', routes.albums.getAlbum); 有人可以解释为什么会发生这种情况吗? 我会假设快车会很聪明,以确定一个身份证参数( /albums/23453243 )与查询string( /albums/artwork?artist=artistName&title=albumTitle )和适当的路线,但这似乎并不是这样的情况?

expressjs支持方法删除,并放在没有方法覆盖

如何让expressjs使用表单的删除和放置方法? <form method="DELETE" action=""> 使用上面的是在最新的稳定版本的chrome中发送一个GET请求。 这应该是一个浏览器问题? 有没有更好的方法来覆盖这个没有一个特殊的input字段来支持这些?

ExpressJS 3.0如何将res.locals传递给玉视图?

我想在用户login失败后显示一个Flash消息,但是我不能让variables显示在我的Jade视图中。 我有一些片断,我知道我必须在我的app.configure()中使用它: app.use (req, res, next) -> res.locals.session = req.session 在用户input错误的密码后,我将设置闪存信息: exports.postSession = (req, res) -> users = require '../DB/users' users.authenticate(req.body.login, req.body.password, (user) -> if(user) req.session.user = user res.redirect(req.body.redirect || '/') else req.session.flash = 'Authentication Failure!' res.render('sessions/new', {title:'New', redirect: req.body.redirect }) ) 我不知道如何访问我的Jade文件中的res.locals.session 。 我怀疑我正在设置一切正确的。 这个问题很像这个:将Express.js 2迁移到3,特别是app.dynamicHelpers()到app.locals.use? 但我仍然无法工作。 如果有人能给我看一个在res.local中设置值并在视图中访问它们的简单例子,我们将非常感激。 PS我知道连接闪光灯,但我需要了解如何在视图中提供的东西。 这是我的应用程序: app.configure(() -> app.set('views', __dirname […]