节点expressJwt除非指定id路由

2024-02-04

我们正在使用expressJwt库,我希望能够排除GET对于以下路线api/items/:id但不包括任何看起来像的路线api/items/:id/special-action.

到目前为止,我只能排除所有具有:id.

下面是我们如何实现排除GET路线有:id.

this.app.use(expressJwt({ secret: secrets.JWT }).unless({
  path: [
    ...
    { url: /\/api\/items\/(.)/, methods: ['GET'] },
    ...
  ]
});

我试过了{ url: /\/api\/items\/(.)\//, methods: ['GET'] }但它不匹配任何路线,因此没有路线:id被排除在外。

我使用正则表达式的方式有些不对劲,但我很难发现它。我需要更改(.)不匹配所有?我想它可能与尾部斜杠匹配


您可以使用

/^\/api\/items\/([^\/]*)$/

The [^\/]*否定字符类匹配 0 个或多个字符/^ / $锚点确保该模式将针对整个字符串进行尝试。

See the 正则表达式演示 https://regex101.com/r/BPmBlS/1.

Details

  • ^- 字符串锚点的开始
  • \/api\/items\/- 匹配文字/api/items/子串
  • ([^\/]*)- 捕获组 1:任何 0+ 字符以外的字符/.
  • $- 绳锚的末端。 请注意,如果您想确保[^\/]* has no /之后,添加一个$绳子末端的锚点在末端。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

节点expressJwt除非指定id路由 的相关文章

  • 在 Redis 上为 Django 和 Express.js 应用程序共享会话存储

    我想创建一个包含一些登录用户的 Django 应用程序 另一方面 由于我想要一些实时功能 所以我想使用 Express js 应用程序 现在的问题是 我不希望身份不明的用户访问 Express js 应用程序的日期 因此 我必须在 Expr
  • [Regex]::Replace() 和 -replace 有什么区别?

    我明白了之间的区别 Replace and replace 但是什么是 replace and Regex Replace 我测试了以下两个代码 但对我来说结果完全相同 我还提到了 PowerShell Cookbook O reilly
  • 限制 Axios 请求

    我正在使用 axios 向 Deezer API 发出请求 不幸的是 使用 Deezer 的 API 当您请求艺术家的专辑时 它不包括专辑曲目 因此 我正在通过请求艺术家的专辑 然后对每个专辑执行后续的 axios 请求来解决这个问题 我遇
  • NodeJs 环境变量与配置文件

    实际上 我有一个 NodeJS Express 应用程序 其配置文件包含主机 端口 JWT 令牌 数据库参数等参数 问题是 将这些参数直接保留在环境变量上 没有任何配置文件 并访问它们 而不需要在所有组件和模块中进行 require 配置是
  • Nodemailer发送日历事件并将其添加到谷歌日历

    我正在尝试使用 nodemailer 将日历事件发送到 Gmail 帐户 这是我的代码 let transporter nodemailer createTransport host smtp gmail com port 587 secu
  • Node.js Express 4.0 中的 res.render 回调参数的用途是什么?

    目的是什么res render回调参数 在什么情况下 由于模板已被指定为第一个参数 因此人们会想要使用这样的回调参数 这是文档中的代码 send the rendered view to the client res render inde
  • 使用 React 渲染来自 Express 的 Flash 消息

    我已经搜索了很多 但一直无法找到一种简单的方法来从 Express 获取 Flash 消息并在 React 中渲染它们 我需要访问 Express 服务器上的数据 但是存储这些数据并将其传递给 React 的最佳方式是什么 我正在考虑传递一
  • Angular JS + Node JS + Passport + Spring OAuth2 身份验证/授权

    我是 PassportJS 和 AngularJS 的新手 我对如何进行此授权有疑问 我有由 Oauth2 保护的 Spring REST API 但我必须像这样一起发送用户凭据 http localhost 8080 myapp oaut
  • 使用 nw-gyp 构建 node-sqlite3

    我正在尝试为 node webkit 构建 sqlite3 The sqlite3 https www npmjs com package sqlite3 installing页面解释说它需要使用 nw gyp 来完成 据我了解 我应该下载
  • 将随机字节转换为整数范围 - 如何?

    我试图通过读取 crypto randomBytes 来获取一定范围内的随机整数 现在 我的问题是我不知道如何从该字节流中读取整数 我想生成一个范围只是 丢弃 不在范围内的整数的问题 有任何想法吗 您可以从以下位置获取一个 32 位整数cr
  • 具有连字符的 Oracle 正则表达式在 Windows 上给出的结果与在 Unix 上不同

    我有以下带有正则表达式的查询 select REGEXP REPLACE TEST 3304 V2 lt gt as REG from dual 当通过 SQL Plus 在Windows机器返回以下内容 SQL gt select REG
  • 警告:访问循环依赖内模块导出的不存在属性“MongoError”

    我正在使用节点执行 API 并使用 Mongoose 当我给一个yarn dev启动我的 Nodemon Mongo 出现错误 我不知道如何解决这个问题 有人有什么想法吗 我使用的是 MongoDB Atlas 数据库 就在出现以下错误之后
  • git 匹配多个单词的标签

    我们可以得到最后一个 git 标签 它以一个单词 例如 TEST 开头 如下所示 git describe tag dirty match TEST 我想知道如何获得最后一个以 word1 开头的标签orword2 例如测试OR跑步 我尝试
  • 如何防止 gulp-notify 破坏 Windows 中的 gulp-watch?

    我正在使用吞咽通知 https www npmjs org package gulp notify插入 这是我如何在 gulpfile js 中实现它的示例 您可以看到我也在使用 gutil 和 livereload 我不知道它们是否发挥任
  • 如何使用 Chai Http 发布对象数组

    我正在尝试发布一个对象数组ChaiHttp https github com chaijs chai http像这样 agent post route to api send locations lat lat1 lon lon1 lat
  • 一次更新猫鼬中的多个文档

    我有一个用户文档数组 每个用户都有关注者属性 它是一个数字 我只想将此属性增加 1 然后立即更新数据库中的所有这些用户文档 更多细节 在请求中 我有一组用户 id 我使用这些 id 进行查询以获取一组用户文档 const users awa
  • Node.js 未处理的“错误”事件

    我编写了一个简单的代码并将其保存在文件 try js 中 var http require http var makeRequest function message var options host localhost port 8080
  • 从节点服务器访问 Google Calendar API

    由于某种原因 我很难访问 Google 日历 我希望能够在 Node js 服务器的日历中添加和删除事件 我从文件中发现了非常矛盾的信息 我跟着 https developers google com identity protocols
  • MongoDB中如何通过引用字段进行查询?

    我有两个 Mongo 模式 User id ObjectId name String country ObjectId Reference to schema Country Country id ObjectId name String
  • Pure Bash 替换捕获组

    我有这个示例字符串 test string 13A6 该字符 数字可以是从 0 到 9 以及从 A 到 F 我想要这个输出 1 3 A 6 我有这个工作 result echo test string sed s g 我想在没有 sed 的

随机推荐

  • Matplotlib Savefig 不会覆盖旧文件

    这看起来一定是我的机器上的权限问题 在 Windows 10 上进行系统更新后 当我运行 import matplotlib pyplot as plt make figure plt plot 1 2 3 4 plt ylabel som
  • python 处理无尽的 XML

    我正在开发一个应用程序 我的工作只是为该应用程序开发一个示例 Python 接口 应用程序可以提供基于XML的文档 我可以通过HTTP Get方法获取文档 但问题是基于XML的文档是无限的 这意味着不会有结束元素 我知道文件应该由SAX来处
  • 在 JSX 中拥有变量属性的最佳方式是什么?

    希望我的问题很清楚 我主要是在寻找一种将属性动态附加到 JSX 输入的方法
  • Python 人们使用哪个路径模块或类来代替 os.path?

    只是想知道有多少人在 Python 中使用路径模块 例如 Jason Orendorff 的路径模块 而不是使用os path用于连接和分割路径 您是否使用过 Jason 的路径模块 http wiki python org moin Pa
  • 决策树中特定类的 Sklearn 决策规则

    我正在创建决策树 我的数据属于以下类型 X1 X2 X3 X50 Y 1 5 7 0 1 1 5 34 81 0 1 4 21 21 1 0 65 34 23 1 1 我正在尝试执行以下代码 X train data iloc 0 51 Y
  • 无服务器框架中的共享 Lambda 授权方设置

    我正在尝试创建一个自定义 Lambda 授权方 该授权方将在几个不同的服务 无服务器堆栈之间共享 如果我理解这里的文档https serverless com framework docs providers aws events apig
  • 如何将 Excel 中的日期转换为 ISO 8601 格式

    我试图将日期格式保存为 YYYY MM DD 例如 2014 09 01 作为 CSV 文件 但当我这样做时 格式会恢复为 M D YYYY 格式 我尝试在 Excel 中将日期转换为字符串 但每次打开 CSV 文件时 它都会恢复为 M D
  • zip(*[iter(s)]*n) 在 Python 中如何工作?

    s 1 2 3 4 5 6 7 8 9 n 3 list zip iter s n returns 1 2 3 4 5 6 7 8 9 如何zip iter s n 工作 如果用更冗长的代码编写它会是什么样子 This is a techn
  • 是否有可以通过示例创建 XSLT 的 XSL 代码生成器? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 给定一个源 XML 文档以及转换后的示例 是否有一个代码生成器可以创建 XSL 转换来完成该转换 我并不
  • async/await 和访问者模式[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我们最近将对象树状结构 大约 40 层深 的访问者之一转换为 async await 模式 因为最里面的接受方法现在执行
  • 如何同时运行两个 python 循环?

    假设我在Python中有以下内容 A loop for i in range 10000 Do Task A B loop for i in range 10000 Do Task B 如何在 Python 中同时运行这些循环 如果你想要并
  • RU/m 去哪儿了?

    这曾经是 CosmosDb 的一项功能 用于提供每分钟请求单位 以及每秒请求单位 但是该选项似乎已从门户中消失 并且所有在线文档均已删除 谢谢 奥利弗 RU m 已死 刚刚收到微软的回复 我们收到了参与预览计划的客户的大量反馈 从 2017
  • 系统中 1 字节!= 8 位? [复制]

    这个问题在这里已经有答案了 我一直读这样的句子 不要依赖 1 个字节就是 8 位大小 use CHAR BIT而不是 8 作为常量在位和字节之间转换 et cetera What real life systems are there to
  • 如何使用 Gradle 在 JAR 中包含单个依赖项?

    我从 Gradle 开始 想知道如何将单个依赖项 在我的例子中为 TeamSpeak API 包含到我的 JAR 中 以便它在运行时可用 这是我的 build gradle 的一部分 apply plugin java compileJav
  • 对于登录应用程序,我将如何检查密码的 sha1 值?

    我将如何添加一个函数来检查数据库中用户 sha1 密码值
  • 如何从编译的二进制文件 (.so) 中删除字符串

    如何从编译的二进制文件中删除字符串 对其进行混淆 目标是避免人们阅读内部函数 方法的名称 它是使用 NDK 工具 包括 GCC 从 Android 的 C 代码编译的动态库 so 我编译用 O3并已经使用arm eabi strip g m
  • 函数式编程中的可变性

    首先我是 Haskell 新手 我读过这个 高度可变域中的不可变函数对象 https stackoverflow com questions 166379 immutable functional objects in highly mut
  • PHP Pear 安装程序停留在 21%

    我尝试在我的网站空间上安装 PHP Pear 我从以下位置上传了安装程序文件http pear php net go pear http pear php net go pear 我启动了安装程序 除了每次都卡在 21 之外 一切似乎都正常
  • 以太坊 Web3.js:内在 Gas 太低

    在过去的几天里 我一直在尝试在以太坊测试网 Rinkeby 上发送一笔交易 无论我将 Gas 增加多少 都会不断收到此错误 未处理的拒绝错误 返回错误 内在气体太低 我发送的数据是 0x7b22416e7377657273223a5b7b2
  • 节点expressJwt除非指定id路由

    我们正在使用expressJwt库 我希望能够排除GET对于以下路线api items id但不包括任何看起来像的路线api items id special action 到目前为止 我只能排除所有具有 id 下面是我们如何实现排除GET