Articles of expression

如何处理expression式4的FormData

我尝试发送一些表单数据到我的节点服务器,但req.body没有我的表单字段节点端 var express = require('express') var app = express() var path = require('path') var bodyParser = require('body-parser') app.use(bodyParser.urlencoded({ extended: true })); app.get('/', function (req, res) { res.sendFile('index.html') }) app.post('/sendmail', function (req, res) { const formData = req.body.formData 这是我从浏览器发送的内容 fetch('/send', { method: 'POST', body: new FormData(form) }) 在开发工具中,我只能看到在Referer中传递的数据,也许这是我的问题 Referer: http:// localhost:3000 /?name =&budget =%C2%A31000

节点+ Express会话到期?

我有一个快速应用程序,我有一个login表单。 我需要会话持续1个月,我设置maxAge为一个月毫秒。 我离开了两台电脑,并login了24小时,当我回来时,两人都注销了。 我如何解决这个问题/实现我想要做的? 谢谢。

如何通过Express中的中间件链来识别请求(通过ID)。

我正在开发node.js中的RESTful服务器,使用Express作为框架,目前Winston作为logging器模块。 这个服务器将处理大量的同时请求,并且使用诸如“请求ID”之类的东西来跟踪每个特定请求的日志条目对我来说是非常有用的。 直接的解决scheme就是在每次我想创build一个日志条目时添加这个ID作为另一条日志信息,但是这意味着将“请求ID”传递给服务器使用的每个方法。 我想知道是否有任何node.js / javascript模块或技术,可以让我这样做一个更简单的方式,而不是携带每个特定请求的请求ID。

如何redirect到node.js中的另一个页面

我有一个login和注册页面。 当随机用户想要login,并login成功,我想redirect他到另一个.ejs页面(例如UserHomePage.ejs),但是,我已经尝试过没有任何工作到目前为止。 if (loggedIn) { console.log("Success!"); res.redirect('/UserHomePage'); } else { console.log("Error!"); } 我也想知道,如何redirect用户点击button。 让我们说在即时通讯显示用户页面,我显示所有的用户,然后有“添加另一个使用的button”。 我怎么做? 如何在onclick后将用户redirect到Register.js页面? <h2>List of users</h2> <ul> <% uporabniki.forEach(function(user) { %> <li> <%= user.attributes.name %> <%= user.attributes.last name %> </li> <% }); %> </ul> <h3>Add another user</h3> <form method="post"> <input type="submit" value="Add user" /> </form> 非常感谢你!

Express – 返回二进制数据

我试图用Express来返回一些二进制数据。 在这个例子中,这是一个PDF,但在理论上,这可以是任何types的文件。 但关注目前的pdf。 我写了这个代码: app.get('*', function (req, res) { getBinaryData(req.url, function (answer) { res.type('pdf'); res.end(new Buffer(answer, 'binary')); }, function (error) { res.setHeader('Content-Type', 'text/plain'); return res.end(error); } ); }); 根据我在这里看到的: https : //github.com/strongloop/express/issues/1555 但是,我得到一个PDF文件的正确数量的页面,正确的标题….但所有的网页是空白的 我确信关心返回的getBinaryData(),因为这个函数问外部Web服务,当我直接问这个服务,我得到正确的文件。 预先感谢您的回答

Angular 4和Expressjs

我最近遵循新的Angular 4教程,现在我想用Angular 4和Expressjs做一个网站。 但是我在如何做到这一点上有一些困难。 你能给我一些提示或帮助吗? 谢谢。

如何在express-node js中使用sticky-session和cluster

我参照这个问题创build了一个依赖于集群的应用程序 但是我开始在会话处理中遇到问题。 如何在集群中使用快速js中的粘滞会话。 我正在尝试使用这个npm模块 。 但这导致了相同的情况。 如何解决这个会话问题。 sticky(http.createServer(app).listen(app.get('port'), function () { console.log('Express server listening on port ' + app.get('port')); }););

限制速度以防止ExpressJS中的恶意行为

有人让我意识到我正在开发的一个应用程序中的一些缺陷(主要是在我的前端的JavaScript中),这就使得我们可以立即点击大量的button并发送大量的事务电子邮件。 这显然不好。 我想在ExpressJS中处理这个问题的一个方法是使用app.all()来计算在特定时间范围内发生的请求的数量。 我会把它存储在带有时间戳的会话元数据中,如果在Y时间内发生超过X个请求,我将它们closures一段时间,直到限制到期。 有没有人以前做过或有任何提示/提示来帮助我? 一些容易进出我的应用程序是可取的。 谢谢!

使用Visual Studio代码debugging节点js

我尝试用Visual Studio代码debugging节点JS中的项目,但我没有实现。 我用下面的命令build立了一个简单的项目: express myExpressApp cd myExpressApp npm install npm start我的文件launch.json: 我在窗口“debugging”中select选项“启动app.js”。 应用程序运行没有问题。 我把一个断点: 我给Chrome的地址是: http:// localhost:3000 / Visual Studio代码说:“暂停断点”,但我什么也没有看到,我可以按继续,应用程序继续… 编辑:我使用OS X 10.10(我testing了它,它在Ubuntu中完美的工作。)

express.js路由解释

我正在查看express.js源代码,以了解如何将命名的路由参数映射到req.params属性。 对于那些不知道的人,在express.js中,你可以用命名参数定义路由,使它们成为可选的,只允许具有特定格式(和更多)的路由: app.get("/user/:id/:name?/:age(\\d+)", function (req, res) { console.log("ID is", req.params.id); console.log("Name is", req.params.name || "not specified!"); console.log("Age is", req.params.age); }); 我意识到这个function的核心是在lib / utils.js中定义的一个名为pathRegexp()的方法。 方法定义如下: function pathRegexp(path, keys, sensitive, strict) { if (path instanceof RegExp) return path; if (Array.isArray(path)) path = '(' + path.join('|') + ')'; path = path .concat(strict ? '' : '/?') .replace(/\/\(/g, '(?:/') […]