问题标签 [connect-flash]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2639 浏览

node.js - 带有 Connect-flash 和 Jade 的警报消息

我正在使用 node.js、express 和 Passport 构建一个具有登录身份验证的站点。对于注册页面,我希望网站在已经使用用户名时发送消息,现在下面的代码工作得很好,但我想添加一个“警报”类型的消息,背景略带红色,并且突出显示的文本。

signup.jade 的代码是这样的:

对于我的路线,我的代码是这样的(它在 module.exports 内)

最后,对于 Passport.js 文件,代码如下:

顺便说一句,我已经尝试过使用引导警报消息,如下所示:

但这会立即在注册页面内显示一个突出显示的区域,即使消息尚未发送。

0 投票
1 回答
1384 浏览

node.js - 错误:“发送后无法设置标题。”

我是 nodejs 及其路由系统的新手。我收到“发送后无法设置标题”。仅在 Heroku 上的生产模式下(在本地工作正常)。

// 登录 ==========================================

// 函数 ================================================ =

// Heroku 的错误日志

2015-08-20T07:37:07.490091+00:00 app[web.1]:错误:发送后无法设置标头。2015-08-20T07:37:07.490096+00:00 应用程序 [web.1]:在 ServerResponse.OutgoingMessage.setHeader (_http_outgoing.js:335:11) 2015-08-20T07:37:07.490098+00:00 应用程序 [ web.1]:在 ServerResponse.header (/app/node_modules/express/lib/response.js:718:10) 2015-08-20T07:37:07.490099+00:00 app[web.1]:在 ServerResponse。发送(/app/node_modules/express/lib/response.js:163:12)2015-08-20T07:37:07.490101+00:00 app[web.1]:完成(/app/node_modules/express/lib /response.js:957:10) 2015-08-20T07:37:07.490103+00:00 app[web.1]: 在 View.exports.renderFile [作为引擎] (/app/node_modules/ejs/lib/ejs .js:355:10) 2015-08-20T07:37:07.490105+00:00 app[web.1]: 在 View.render (/app/node_modules/express/lib/view.js:126:8) 2015 -08-20T07:37:07.490106+00:

0 投票
1 回答
929 浏览

ajax - 在 Express.js 中重定向后 Jade html 未更新

我目前在Express.js使用 Jade 的模板引擎和连接闪存时无法显示闪存消息。当用户尝试将新的用户对象添加到我已经存在的数据库中时,我只是试图闪现一条错误消息。但是,在调用 router.post 并重定向回索引后,我的页面上没有显示 flash 消息(代码如下)。

通过各种console.logs和调试,我发现我发布的数据确实是正确发布的,并且正在设置flash消息。我发现在重定向时,所有正确的数据都传递给 Jade 模板,但文件本身中的变量没有更新。我现在想知道这是与会话相关的问题,还是与我完全忽略的 Flash/Jade/Express 相关的问题?

在下面的代码中,我正在记录会话数据以及将 Flash 消息设置为变量。如果 Flash 消息的数组为空(即在页面加载时),则设置一个数组,其中包含这样的消息。如果 flash message(s) 数组包含 flash 消息,则测试数组设置有这样的消息。

index.js

在我的 Jade 模板中,我再次记录 errorMessages 和 testArray 以确保所有内容都正确(它是)传递给文件,然后显示变量。

index.jade

最初加载页面时,我会得到以下 HTML 输出:

这里没有惊喜。但是,当我提交带有设置错误闪存消息的数据的表单时,我会从正确的变量和router.get('/')变量中获取更新的日志。但是我的 HTML 输出保持不变:index.jadeerrorMessagestestArray

显然,传递给 Jade 的变量正在正确更新,但似乎 Jade 根本没有更新 HTML。由于我对 connect-flash 和 Jade 如何工作的了解有限,这会让我相信这是一个与会话相关的问题,但是我的代码app.js似乎设置正确......

我对 比较陌生Express.js,所以我觉得可能有一些我忽略或不理解的小东西,但我已经尝试尽可能详细,所以我希望有人可以在这里帮助我!

0 投票
1 回答
288 浏览

node.js - connect-flash 中间件不显示消息

我一直在尝试将 connect-flash 中间件用于消息,但它似乎不起作用。我收到以下错误:ReferenceError: /Users/zc/Documents/tutorials/node-auth/views/addstudent.ejs:14 12|

添加新学生

13| >> 14|

欢迎:<%= user.local.name %>

15| 16| 17| 用户未在 eval 处定义(eval at (/Users/zc/Documents/tutorials/node-auth/node_modules/ejs/lib/ejs.js:464:12), :11:23) 在 returnedFn (/Users/zc /Documents/tutorials/node-auth/node_modules/ejs/lib/ejs.js:493:17) 在 View.exports.renderFile [作为引擎] (/Users/zc/Documents/tutorials/node-auth/node_modules/ejs /lib/ejs.js:350:31) 在 View.render (/Users/zc/Documents/tutorials/node-auth/node_modules/express/lib/view.js:76:8) 在 Function.app.render ( /Users/zc/Documents/tutorials/node-auth/node_modules/express/lib/application.js:502:10) 在 ServerResponse.res.render (/Users/zc/Documents/tutorials/node-auth/node_modules/express /lib/response.js:777:7) 在 ServerResponse.res.render (/Users/zc/Documents/tutorials/node-auth/node_modules/express-flash/lib/express-flash.js:29:16) 在询问。(/Users/zc/Documents/tutorials/node-auth/app/routes.js:78:

这是我的路线:

我正在使用 ejs 进行模板。我不确定为什么我没有定义用户,即使在渲染学生视图时将其作为对象传递。

0 投票
0 回答
130 浏览

node.js - 将 connect-flash 与 sequelize 一起使用

我无法让连接闪存在续集回调函数中工作。

以上是我当前的代码,已经尝试了一些变体,在 .then() 中调用了 flash 和重定向,尝试了 2 个 .then() 和现在的 .done()。

我收到以下错误:

未处理的拒绝 TypeError: undefined is not a function at Instance.set (/home/node/shared/Heroku/landbou/node_modules/sequelize/lib/instance.js:348:68)

这可以通过删除 aRequest.flash(...) 轻松解决。

是的,' router.use(flash()); ' 被称为更高的。

一切都在继续,所以它不是应用程序中断错误,但我确实需要消息闪现,否则我必须创建额外的浪费路由来处理用户注册的成功/失败。

0 投票
1 回答
1401 浏览

node.js - 难以理解如何在 Express 4.x 中使用 connect-flash?

所以这个的基础是,我有一个登录表单——如果用户输入了错误的帐户信息,我希望它重定向回登录页面并显示一条消息,说明他们输入了错误的信息——现在我'我只是试图在测试消息中输出以确保我对此有一个有效的理解。

对于理解 connect-flash 的基本指南(因为这似乎是我工作所需的工具),我从高处和低处寻找,但我并不完全理解它 - 我已经编写了一些代码来尝试和实现它,但在编译我的 Jade 文件时我不断收到此错误:

我的代码在下面,我将不胜感激,但如果有人能解释我做错了什么,我会更喜欢它(或者至少链接到我可以了解如何使用 connect-flash 的东西)

应用程序.js

0 投票
0 回答
30 浏览

javascript - 使用 connect-flash 在视图中丢失消息

我正在使用此 repo 中的此代码:https ://github.com/eldyvoon/register-login-nodejs但我看不到错误消息,尽管作者正在使用 connect-flash 来处理错误。例如,当您使用错误的凭据登录时,消息应该出现在视图中。任何人都可以在这里提供帮助吗?调试了几个小时无法得到解决方案。

0 投票
1 回答
2703 浏览

node.js - 无法显示来自 Passport.js 的 Flash 消息

如果身份验证失败,我在发送闪存时遇到问题。除了一切正常。当我将示例(https://github.com/jaredhanson/connect-flash)复制到我的应用程序时,闪存消息工作正常......

这是我的代码:

我在某处读过这个问题可能与安全性有关,而不是使用 https,但如果是这样的话,来自 github 的例子也不起作用......

0 投票
3 回答
11222 浏览

node.js - 类型错误:req.flash 不是函数

当我尝试从页面登录时,出现错误return done(null, false, req.flash('loginMessage', 'User does not exist')); TypeError: req.flash is not a function

下面是我的 server.js 和 passport.js 配置:

server.js:

配置/passport.js:

我真的很感谢大家的帮助!!!

登录服务.config.js

路由.js

0 投票
0 回答
252 浏览

angularjs - 从 nodejs 向 angularjs 发送数据以获取 flash-message

就像我们将数据从 nodejs 发送到 ejs 模板

server.js

login.ejs

有没有办法使用 angularjs 而不是 ejs。我正在使用 connect-flash 来获取 Flash 消息。