app.use(验证器()); ^ TypeError:验证器不是函数

2024-03-09

我正在开展一个夏季培训项目,我被要求使用以下命令创建一个登录页面Node.js但是,安装后express-validator并输入我想在的代码app.js文件每次运行时都会打印出一个错误app.js or the www在 bin 文件中告诉我“validator不是一个函数”。

最重要的是,我在 Windows 上使用 WebStorm 作为我的 IDE。

这是它打印出来的错误;

app.use(validator());
        ^
TypeError: validator is not a function

这是来自的代码app.js file;

var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var validator = require('validator');
var session = require('session');


var routes = require('./routes/index');
var users = require('./routes/users');

var app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');

// uncomment after placing your favicon in /public
//app.use(favicon(path.join(__dirname, 'public', 'favicon.ico')));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(validator());
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use(session({secret:'max', saveUninitialize: false, resave: false}));

app.use('/', routes);
app.use('/users', users);

// catch 404 and forward to error handler
app.use(function(req, res, next) {
  var err = new Error('Not Found');
  err.status = 404;
  next(err);
});

// error handlers

// development error handler
// will print stacktrace
if (app.get('env') === 'development') {
  app.use(function(err, req, res, next) {
    res.status(err.status || 500);
    res.render('error', {
      message: err.message,
      error: err
    });
  });
}

// production error handler
// no stacktraces leaked to user
app.use(function(err, req, res, next) {
  res.status(err.status || 500);
  res.render('error', {
    message: err.message,
    error: {}
  });
});

module.exports = app;

卸载当前版本:npm uninstall express-validator.

并安装旧版本:npm install [email protected] /cdn-cgi/l/email-protection.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

app.use(验证器()); ^ TypeError:验证器不是函数 的相关文章

  • 如何在Windows的node js中设置默认时区

    我正在尝试在应用程序启动时设置时区 set TZ UTC node main js 但这不起作用 main js var tz process env TZ var date new Date console log tz date UTC
  • FFMPEG:使用具有复杂滤波器的视频滤波器

    我正在使用fluent ffmpeg用于对视频文件执行批量操作的 Node js 库 视频过滤器裁剪 16 9 输入 添加填充并将字幕刻录到填充中 在下一步中 我想使用复杂的滤镜来覆盖图像作为水印 ff input video mp4 ff
  • 使用 Sequelize (NodeJS) 代替 * 指定特定字段

    好吧 我在 NodeJS 中有一个项目 我正在其中使用 Sequelize 来实现 MySQL ORM 这件事工作得非常好 但是我试图弄清楚是否有一种方法可以指定在查询的基础上返回哪些字段 或者是否有一种方法可以在某处执行 query 例如
  • PDF 附件 NodeMailer

    预先感谢您的回复 我编写了一些使用nodemailer 0 7 1的代码 它发送电子邮件并将pdf附加到电子邮件中 但是 pdf 附件在编码时会自行损坏或截断或发生其他情况 我之所以说这是附件之前的文件 即我本地的文件 是512kb 而电子
  • 等待承诺的 fs.writeFile 与 fs.writeFileSync

    此选项之一有一些优点吗 1 const fs require fs const testFunc1 async gt fs writeFileSync text txt hello world 2 const fs require fs c
  • 错误:grid.mongo.GridStore不是构造函数,使用mongoose、Grid-fs-stream和grid multer存储

    我收到以下提到的错误 基本配置如下 我已经将文件上传到服务器上 我想下载它们但出现这些错误 我向 api files delete fileId 调用了 POST 请求 它应该调用路由并将文件返回给浏览器 而不是使用网格相关模块获取错误 M
  • crypto createHMAC 输出根据 Nodejs 版本而有所不同

    我在升级节点版本时遇到加密模块问题 创建的HMAC取决于节点的版本 您将在下面找到重现该问题的代码片段 如果我将密钥编码为 BASE64 或任何 HMAC 不依赖于 node js 版本 如果我将其编码为二进制 则当我更改 Node js
  • asp.net mvc jquery 下拉验证

    我如何使用不显眼的 javascript 验证下拉列表 作为所需验证器的验证文本框 但它不适用于下拉列表 需要更改不显眼的 js 文件吗 或者还有其他选项来验证下拉列表吗 我想在我的 javascript 中检查 form validate
  • 使用 Maven 和 Spring REST 配置 Angular 2 项目

    我想将我的小型应用程序从 Angular 1 升级到 Angular 2 我对 Angular 2 和节点配置有点陌生 我的网络应用程序使用 eclipse 和 Maven 问题是我无法使用 Angular 2 进行配置 我应该使用什么目录
  • npm install 的问题(Angular)

    今天我尝试创建一个新项目 所以我使用这个命令 ng new NAME style less 并在我的cmder中弹出错误和警告 所以我卸载了 Roaming npm 和 npm cache 中的节点和文件 然后我安装了node并再次下载cm
  • socket.io xhr 在连接缓慢时出现错误(3G 移动网络)

    当我在 3G 移动网络 互联网连接速度慢 上测试我的真实聊天应用程序时 Socket io反复断开然后重新连接 我已经记录了原因 它说 xhr post error 这提高了 transport error 然后断开连接 我可以知道什么意思
  • 是否可以直接获取 Puppeteer 音频源和/或输入音频到 Puppeteer?

    我想将 WAV 或 MP3 输入到 puppeteer 作为麦克风 但是在无头模式下应用程序被静音 所以我想知道是否有一种方法可以直接将输入输入到浏览器中 我还想知道是否可以在无头状态下从浏览器获取音频源 和 或录制音频并将其放在文件夹中
  • 多次训练brain.js?

    在第一次训练后 如何将新信息 仅新信息 而不是所有信息 因为这会花费太多性能 训练到我的用 Brain js 制作的神经网络 它有点粗糙 但您可以使用以下结构来实现 如果我们加入 2 个训练数据集 旧数据集与新数据集 然后重新训练keepN
  • 根据 MVC,哪种项目结构是正确的? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我注意到诸如flask通常有一个名为views容纳 app route def index return render template ind
  • 如何用 JavaScript 修复图像透视变形和旋转?

    我有一些用手机拍摄的图像 有没有可以拉直纸张照片并将其压平的 JavaScript 库 例如 我想创建一个矩形图像 该图像没有任何失真 换句话说我想知道如何用 JavaScript 修复透视变形和旋转 例如 我发现下面的示例图像来自this
  • 在express js中禁用http方法

    我正在我的 Express 应用程序上进行 nessus 测试 这是我得到的 基于每种方法的测试 HTTP 方法 ACL CHECKOUT COPY DELETE GET HEAD LOCK MERGE MKACTIVITY MKCOL 移
  • 让 Jest 全局设置和全局拆卸在 TypeScript 项目中工作

    我想运行一个在运行测试之前打开数据库连接的函数 全局设置 以及另一个在运行测试后关闭数据库连接的函数 全局拆卸 目前我有以下配置 包 json jest testEnvironment node globalSetup src jest g
  • 从 Flask 运行 NPM 构建

    我有一个 React 前端 我想在与我的 python 后端 API 相同的源上提供服务 我正在尝试使用 Flask 来实现此目的 但我遇到了 Flask 找不到我的静态文件的问题 我的前端构建是用生成的npm run build in s
  • 无论我将其添加到何处,Azure 应用程序服务(节点)CORS 源都无法工作

    Azure CORS 设置似乎根本不起作用 除非我指定 任何和所有请求都将返回 has been blocked by CORS policy Response to preflight request doesn t pass acces
  • 如何检查用户电子邮件的唯一性并将结果传递给 jQuery?

    我有这个问题 我正在控制器中检查用户电子邮件并发送 json 成功响应 如果已获取 并添加输入的 css 样式 我还需要阻止提交并添加一些消息 这是我的检查电子邮件操作 使用本文 http paydrotalks com posts 45

随机推荐

  • Shiro 使用 sessionId 或用户名+密码进行身份验证

    我在 Java 身份验证框架和身份验证工作流程方面没有太多经验 只有一些理论知识 因此出于教育目的 我尝试为我的 HTTP 应用程序创建这种类型的身份验证 客户端将登录名 密码发布到 login Shiro 通过给定的凭据登录用户 服务器返
  • 如何设置 Swagger 忽略 @Asynchronous jax-rs bean 方法中的 @Suspished AsyncResponse?

    Swagger Core 似乎将 Suspished 最终 AsyncResponse asyncResponse 成员解释为请求正文参数 这显然不是有意的 也不是事实 我想告诉 swagger core 忽略此参数并将其从 api 文档中
  • 如何使用 Scipy 找到局部最小值[重复]

    这个问题在这里已经有答案了 我想从数组或列表中找到局部最小值 通过以下代码 我可以找到局部最大值 我知道存在相关问题 但我仍然想知道 是否存在任何逻辑可以使用相同的代码来查找局部最小值 Code import matplotlib pypl
  • 公司坚持对我们的所有文档使用二进制格式[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我在一家公司工作 出于某种原因 该公司坚持所有开发文档都应采用 MS Word 格式 作为二进制格式
  • .NET 中 32 位进程如何与 64 位进程通信?

    Windows 不允许 32 位进程加载 64 位 dll 因此我尝试使用远程处理来允许 32 位进程与 64 位进程交互 问题是 虽然两个应用程序位于同一台计算机上 但一个是 32 位 另一个是 64 位 而且它们必须是这样的 同时使用
  • 从 Sql Server 2000 上的存储过程插入临时表

    我正在尝试完成这里描述的事情 http sqldev wordpress com 2008 05 06 insert into temporary table from stored procedure http sqldev wordpr
  • 使用 char * 访问 int 是否可能具有未定义的行为?

    下面用于测试字节顺序的代码预计具有实现定义的行为 int is little endian void int x 1 char p char x return p 1 但它是否有可能在特意设计的架构上具有未定义的行为 例如 表示的第一个字节
  • Javascript找不到这些变量,为什么?

    我正在使用 Phonegap 创建 Android 应用程序 录音机 但我的代码中有以下 2 个错误 ReferenceError Can t find variable Media TypeError Result of expressi
  • 针对 3.5 框架的 VS2010 上的 RESX 文件存在问题

    这是我最近遇到的一个故事和一个可能的答案 我只是想分享这个信息 因为我在 stackoverflow 上还找不到这个信息 我将我的解决方案从 VS2008 WinXP 32 位升级到 VS2010 Win7 64 位 当我对生成新 RESX
  • 将 HTML 文件转换为 PDF [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 将 Pandas 绘制成子图

    da 是我的数据框 我想把这个图变成我将拥有的 2 个子图中的一个 当我为这个图添加 plt subplots 2 1 2 时 它最终会将该图分成一个单独的图 并且子图是一个空图 我怎样才能把这段代码变成一个子图 Thank you in
  • 它在 php/html 中的输出详细信息不正确

    我想当用户选择时显示下拉菜单中的所有问题All从问题下拉菜单中并将其输出在下面 问题是它没有这样做 更糟糕的是 它给了我未定义的偏移错误 指出 Notice Undefined offset in on line 605 605行是 ech
  • 使用 UWP 通过拖放重新排序可绑定列表视图

    我正在尝试重新排序ListView通过拖放 它在使用静态项目时与我一起工作 但是当我使用绑定数据时物品来源拖动工作正常 但我无法删除该项目 这是我的代码 C lstSrvMenu ItemsSource Menue MainItems Wh
  • 如何使用 JS 删除或重置 CSS 样式?

    我想使用 JS 删除或重置应用于特定 DOM 节点的样式 node style webkitTransitionDuration 5000ms node style webkitTransformOrigin 200px 200px nod
  • 在 Windows 10 (1803) 上,如果 WPF 透明窗口覆盖在所有应用程序上,所有应用程序都会失去触摸或手写笔功能

    如果我使用简单的空窗口 如下面所示的代码 创建一个新的 WPF 应用程序 我发现 WPF 应用程序覆盖的所有应用程序都失去了触摸或手写笔反应 仅当 Windows 10 升级到 1803 10 0 17134 0 时才能重现此情况
  • 使用 Bootstrap 4 的剩余垂直空间

    我想让 id 网格使用完整的可用垂直空间 div class container fluid div class row mb 2 div class col h2 i class fas fa map marker alt i Test
  • Vaadin 的 vaadinBootstrap.js

    我遇到了令人困惑的问题 我正在使用 Vaadin 7 框架来创建一些 安静简单的 应用程序 当我在 Eclipse 中测试它时 一切正常 但是当我将项目部署到 Tomcat 中时 一些谜团开始出现 当我从管理器应用程序 运行 应用程序时 只
  • 查看特定的 Git 提交 [重复]

    这个问题在这里已经有答案了 可能的重复 获取有关 SHA 1 提交对象的信息 https stackoverflow com questions 7610073 get information about a sha 1 commit ob
  • 如何使用 node.js 构建消息以通过 TCP 发送?

    我需要从 Node js TCP 服务器向多个 TCP 客户端发送 JSON 字符串 为了从客户端的套接字 流读取消息 我需要进行某种消息框架 实现此目的的一种方法是将消息长度作为数组作为消息前缀 然后将其转换为客户端消息的缓冲区大小 我如
  • app.use(验证器()); ^ TypeError:验证器不是函数

    我正在开展一个夏季培训项目 我被要求使用以下命令创建一个登录页面Node js但是 安装后express validator并输入我想在的代码app js文件每次运行时都会打印出一个错误app js or the www在 bin 文件中告