问题标签 [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 投票
0 回答
559 浏览

node.js - req.flash() 需要会话但会话存在

堆栈:Mongo/Redis、Express 和 Node

我的会话设置与大多数其他 Stack Overflow 帖子指向的一样。我使用 Redis 作为我的会话存储。这是我的会话设置:

这出现app.use(flash());在我的 app.js 文件中。

我唯一能想到的是我需要在我的路由文件中设置会话。但是多次设置会话似乎是错误的。我确实需要我在下面设置会话和闪存的路线。

知道这里发生了什么吗?

错误信息:

堆栈跟踪指向 app.js 的第 55 行,即res.locals.error = req.flash("error");

那是在我打电话给我的路线之前,但在我设置我的会话之后。如果我将其注释掉,则它指向调用的路线。在这种情况下,索引路由。

如果我将 res.render 更改为 res.send,那么它会发送没有错误的消息。

0 投票
1 回答
891 浏览

node.js - passport.authenticate() 不显示闪存消息

再会,

我正在关注 [this]( https://www.youtube.com/watch?v=iX8UhDOmkPE&t=682s "登录和验证应用程序") 教程。一个区别是我使用的是 mysql 而不是 mongoose。

尝试登录时,我想闪烁消息。例如“用户名未知”。

不幸的是,这并没有发生,模块护照中硬编码的“凭证丢失”消息也不起作用。

server.js

登录模块

我的客户端正在使用 .handlebars 文件:

[编辑] 经过一天的反复试验,我终于找到了一种闪现我的信息的方法:)

通过添加以下内容在 Localstrategy 中传递 req:

这允许 req.flash('error_msg', 'Username or email not known'); 1

因为在 server.js 我有:

消息“用户名或电子邮件未知”在浏览器中显示客户端

0 投票
0 回答
375 浏览

javascript - Javascript - 无法在 AJAX 调用上显示 Flash 消息

我正在开发一个应用程序,其中有一个可搜索的参考数据库,并且有一个允许用户编辑数据库的管理应用程序。面向公众的一面使用 Knockout JS 通过 RESTful API 与服务器通信。管理应用程序使用 express。页面是使用 Handlebars 从模板呈现的。编辑视图使用与公共视图相同的呈现代码。

我正在使用 connect-flash 向编辑器发送操作结果消息。当表单提交到页面(用于添加新引用)时,会按预期显示闪烁消息,但是,对于表格视图中每个项目上可用的命令(如删除特定引用),我使用来自视图模型中定义的函数的 ajax 调用。调用正确执行并执行了操作,但永远不会向用户显示 Flash 消息。我有一个自定义中间件,它将 Flash 消息收集到模板的替换对象中。当我记录发送了哪些消息时,我从来没有看到删除调用产生的消息,所以我不仅仅是在额外刷新时丢失了它。

这是我正在使用的请求处理程序:

我已经尝试将重定向更改为 278 以防止浏览器透明地处理重定向,然后在 ajax 调用的成功函数中处理它,按照How to manage a redirect request after a jQuery Ajax call,但这没有帮助.

这是定义视图模型的客户端javascript:

我用来收集闪存消息的中间件:

0 投票
1 回答
8 浏览

node.js - Nodejs 连接闪存 | Passportjs 传递不同的消息类型而不是“错误”

我想传递不同的消息类型,因为我使用 bootstrap 4x 它没有警报警报错误。你会如何改变它? 护照.js

0 投票
1 回答
30 浏览

javascript - 如何从 connect-flash 修复 div,它们始终处于活动状态(我正在使用哈巴狗)?

所以我在我的 app.js 中有这个: var flash = require('connect-flash');

在我的 layout.pug 中,我有:(就在块内容之前)

当我使用它时:

和成功。

但是div(class="alert alert-danger")并且div(class="alert alert-success") 总是在我页面的顶部,没有消息,只有 2 个空栏。 分区 怎么了 ?

0 投票
3 回答
372 浏览

node.js - 如何将 req.flash() 与 nunjucks 一起使用?

我正在使用 connect-flash 来传递 flash 消息。在我的控制器中,我使用以下代码if (!req.user) { req.flash("error_msg", "User not found !!"); return res.redirect(307, '/'); }

在我看来,我尝试过

{{ 错误信息 }}

{{ req.flash('error_message') }}

{{ req.flash.get('error_message') }}

但这些都不起作用。当前解析 nunjucks 中的 flash 消息的语法是什么?

0 投票
0 回答
160 浏览

node.js - req.flash() 数据即使在使用 connect-flash 刷新页面后仍然存在

我正在使用 connect-flash 在我的sailjs 应用程序中显示一条消息。即使刷新页面后,Flash 消息仍然存在。我尝试了这个解决方案

我创建了一个策略来在任何请求之前清除req.session.flash数组,但这样做不会显示任何时间的闪存消息。仅显示一次 Flash 消息的正确方法是什么?

编辑 :-

我的政策中的代码:-

policy.js 包含

'*' : 'removeFlash'

我的控制器包含

req.flash("error_msg", "Incorrect username or password."); return res.redirect("/login");

0 投票
1 回答
1295 浏览

node.js - req.flash 不能与 res.redirect 一起使用

我对节点和快递世界有点陌生,所以请原谅我的任何错误,我有几个方法在我使用这样的东西后返回 500。

参考错误

我也试过用它发送状态

但它也没有成功

当我尝试重新加载页面时它工作正常(在第二次尝试时),但是如果我评论 req.flash 一切都开始正常工作,似乎它导致了问题,而它与我所在的其他方法一起工作正常像使用它一样

我的 index.js 文件中的代码

我的 app.js 中的代码

我试图在网上找到解决方案,但无法使其正常工作。我真的很难调试任何帮助将不胜感激。

0 投票
1 回答
562 浏览

node.js - 在呈现页面之前不保存闪存消息(节点)

作为 express 应用程序中通用 get 路由的一部分,我想发送两条带有 express-session 和 connect-flash 的 flash 消息。除了 req.flash 在页面呈现之前不保存之外,这一切都有效。因此,在用户再次加载另一个页面或相同页面之前,不会显示 Flash 消息。

路由中最后一个函数的代码:

这是其中一个 Flash 消息模板 (ejs) 的代码:

我曾尝试在 req.flash 之后使用 .exec() 使渲染语句在完成时运行,但这不起作用,我还尝试在回调中使用渲染语句 req.session.save() 但这也失败了.

去掉其中一个 req.flash 语句,或者只传递一个字符串参数而不是两个数组,都不能解决这个问题。

0 投票
0 回答
118 浏览

node.js - 如何修复 nodejs 不显示 flash 消息

我正在使用 express 并且我正在创建一个连接到 mongo 数据库的注册页面,我做到了,当用户键入与另一个用户相同的电子邮件时,它会使用 connect-flash “电子邮件已在使用中”闪烁一条消息,但它没有显示在我的网站上,即使我放了另一条消息“无效的电子邮件”,它仍然有效。

index.js 代码:

护照.js代码: