body-parser - 扩展选项(qs 与查询字符串)

2024-01-30

在当前版本中正文解析器 https://github.com/expressjs/body-parser, the extended使用时的选项bodyParser.urlencoded()现在需要。在自述文件中,它解释了:

扩展选项允许选择使用 querystring 库(当为 false 时)或 qs 库(当为 true 时)解析 URL 编码数据。

[...]

默认为 true,但使用默认值已被弃用。请研究 qs 和 querystring 之间的区别并选择适当的设置。

我找不到任何有关此的有用或具体信息。我只找到了一个已弃用的节点查询字符串 https://github.com/tj/node-querystring.

这个选项应该永远为真吗?


出现此消息的原因是body-parser is 即将更改默认值extended from true to false https://github.com/expressjs/body-parser/issues/45.

扩展协议用途qs library https://www.npmjs.com/package/qs解析x-www-form-urlencoded数据。主要优点qs最主要的是它使用了非常强大的序列化/反序列化算法,能够序列化任何类似json的数据结构。

但网络浏览器通常不使用此协议,因为x-www-form-urlencoded旨在序列化平面 html 表单。不过,如果您要使用发送丰富的数据结构,它可能会派上用场ajax.

querystring图书馆` https://www.npmjs.com/package/querystring提供基本的序列化/反序列化算法,所有 Web 浏览器都使用该算法来序列化表单数据。这种基本算法比扩展算法简单得多,但仅限于平面数据结构。

两种算法对于平面数据的工作原理完全相同。

现在,当您了解两种算法的优缺点后,您就可以决定哪一种更适合您的应用程序。

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

body-parser - 扩展选项(qs 与查询字符串) 的相关文章

  • Grunt-browserify+mapify+coffeescript = 未通过相对路径找到模块

    我尝试让 grunt browserify 使用 Coffeescript 的相对路径 但当我尝试构建源代码时总是收到错误消息 gt gt Error module src app utils includeMixin not found
  • Node.js + Socket.io + Windows 7 / 8?

    我一直在到处寻找 但似乎找不到解决方案 是否可以在 Windows 7 上的 Node js 上安装 Socket io 如果没有 是否有某种替代方案 或者您知道未来有任何 Windows 支持吗 通常使用 Node js 包管理器 但是我
  • Node.js 中没有请求状态 Morgan Logging

    我正在 Azure VM 上运行 node js 应用程序 使用 PM2 处理负载平衡和重新启动 这是服务器设置和日志记录代码 var logger require morgan var app express app set views
  • Mongoose 查找 array.length 大于 0 的所有文档并对数据进行排序

    我正在使用 mongoose 对 MongoDB 执行 CRUD 操作 这就是我的架构的样子 var EmployeeSchema new Schema name String description type String default
  • keystonejs 模型中的动态类型选择

    我想在 adminUI 中使用一个组合框 其中包含来自 Web 服务的字段 我正在考虑使用预 查找 挂钩获取数据 然后覆盖模式中 受众 属性的选项属性 Schema Compliance add title type Types Text
  • node-mongodb-native的插入性能

    我正在使用 MongoDB 测试 Node js 的性能 我知道其中每一个都很好 彼此独立 但我正在尝试一些测试来感受它们 我遇到了这个问题 但无法确定来源 问题 我正在尝试在单个 Node js 程序中插入 1 000 000 条记录 它
  • Electron — 无法显示自定义图标

    我在以两种不同的方式设置 Electron 应用程序的图标时遇到问题 非打包 通过终端运行应用程序 我的 main js 确实指定了一个 图标 值 指向图标文件 但它不适用 包装 使用电子包装器 我的 package json 文件指定了
  • 通过 PHP 连接到 socket.io(nodejs)

    我需要通过 php 连接到 websocket 发送数据并立即断开连接 无需等待套接字的响应 我用了大象io http elephant io 但更新库后不起作用 请告诉我如何通过 PHP 连接到 websocket 我也遇到了这个问题 学
  • Sequelize WHEREsequelize.fn(...) AND some='something' 排序问题

    我有一个 Sequelize findOne 函数 它会选择给定点与多边形 col geom 相交且状态 active 的行 var point sequelize fn ST GeomFromText POINT lng lat 4326
  • 变量前面加双下划线

    我的节点代码中有以下代码片段 var fs require fs fs readdir dirname function err files console log files 为什么变量 dirname 有双下划线 我知道一个下划线是私有
  • 了解使用 Windows 本机 WPF 客户端进行 ADFS 登录

    我已经阅读了大量有关 ADFS 与 NodeJS Angular 或其他前端 Web 框架集成以及一般流程如何工作的文献 并通过 Auth0 Angular 起始代码构建了概念证明 但我不明白如何这可以与本机 WPF Windows 应用程
  • 使用 TFS 2015 运行 Jest 单元测试

    有人尝试将 jest 单元测试与 TFS 2015 集成吗 我尝试使用 Chutzpah 测试适配器 https visualstudiogallery msdn microsoft com f8741f04 bae4 4900 81c7
  • 使用 Nodemailer 提交电子邮件时 NodeJs 错误

    我已按照以下步骤设置 Nodemailer 1 允许访问 Gmail 中安全性较低的应用程序 2 在app js中写入以下内容 app post reachus send function req res var transporter n
  • 在 Redis 上为 Django 和 Express.js 应用程序共享会话存储

    我想创建一个包含一些登录用户的 Django 应用程序 另一方面 由于我想要一些实时功能 所以我想使用 Express js 应用程序 现在的问题是 我不希望身份不明的用户访问 Express js 应用程序的日期 因此 我必须在 Expr
  • 为 npm install 添加本地项目依赖

    在 npm 中添加本地项目依赖项的正确语法是什么package json file 我本地有 git 项目C projects MyApp 我想得到这个项目npm install 我尝试以下 dependencies my app file
  • 限制 Axios 请求

    我正在使用 axios 向 Deezer API 发出请求 不幸的是 使用 Deezer 的 API 当您请求艺术家的专辑时 它不包括专辑曲目 因此 我正在通过请求艺术家的专辑 然后对每个专辑执行后续的 axios 请求来解决这个问题 我遇
  • Nodemailer发送日历事件并将其添加到谷歌日历

    我正在尝试使用 nodemailer 将日历事件发送到 Gmail 帐户 这是我的代码 let transporter nodemailer createTransport host smtp gmail com port 587 secu
  • 函数不会等到 Promise 得到解决

    我正在开发一个简单的不和谐机器人 我正在尝试打印有关某个玩家的一些一般数据 我最近了解了 async await 并尝试将其实现到我的代码中 然而 它似乎不起作用 因为当我第一次触发此代码时 它会打印 null 但在后续触发时 它将打印正确
  • 电子应用程序可以播放本地支持的任何视频吗?

    我知道浏览器通常会限制玩家mp4 and webm类型的媒体 但我想知道基于电子的应用程序是否可以运行 MKV 和 AVI 等格式的本地视频 我找不到明确的来源来告诉我什么是可用的 什么是不可用的 Electron 仍然仅限于网络技术 这意
  • 如何使用 AMQP 以“PeekLock”模式从 Azure 服务总线队列获取消息?

    我们正在尝试在 Node 应用程序中使用 Azure 服务总线 我们的要求是从队列中获取多条消息 由于Azure SDK for Node不支持批量检索 我们决定使用AMQP 虽然我们能够使用 Peek Messages 获取消息 如此处所

随机推荐

  • Java GraphQL - 将字段值传递给对象的解析器

    我希望使用另一种对象类型将字段值传递给已解析的字段 另一种说法是 如果我有 客户 gt 用户 gt 配置文件 如何将客户中的 CustomerID 字段值作为参数或变量传递给配置文件 以便正确解析 有 5 种可能性 从 graphql ja
  • if 语句导致 Verilog 中的锁存推断?

    我正在编写用于合成算法的 Verilog 代码 我对哪些情况可能导致推断锁存器有点困惑 下面是这样的一段代码 虽然它在模拟中工作得很好 但我担心它可能会导致硬件问题 always b1 or b2 b1 map b2 map m1 map
  • 如何在批处理文件中增加txt文件中的值?

    我一直在尝试编写一个批处理代码 该代码将 POST后自动执行 增加一个代表 POST 数量的值 保存 显示值并重新启动 PC 我试图编写一个访问 txt 文件以获取该值的程序 但该值不会增加 echo off echo This scrip
  • 如何使用 Python 将用户移动到不同的 OU

    我一直在玩奇妙的游戏活动目录模块 http timgolden me uk python ad cookbook html来自 Tim Golden 和广泛的 python ldap 模块 虽然我看到了大量关于如何从 python 查询 修
  • LSAT 逻辑游戏部分出现什么类别的组合问题?

    EDIT See 以编程方式解决 谁拥有斑马 问题 https stackoverflow com questions 318888 solving who owns the zebra programmatically对于类似的问题 LS
  • 前台服务无通知

    我想开始一个前景不显示通知的服务 像 instagram telegram zapya 等应用程序有前台服务并且他们没有显示任何通知 我已经测试过类似答案的方法here https stackoverflow com q 10962418
  • 状态栏后面的工具栏

    我的工具栏和状态栏有问题 我将应用程序样式更改为 AppCompat 我的风格是 对于值 styles xml
  • tabula 与 Camelot 从 PDF 中提取表格

    我需要从pdf中提取表格 这些表格可以是任何类型 多个标题 垂直标题 水平标题等 我已经实现了两者的基本用例 发现 tabula 比 Camelot 做得更好一点 但仍然无法完美地检测所有表 而且我不确定它是否适用于所有类型 因此 寻求实施
  • 使一组元素水平向左移动

    在下面的代码中 我安排了几个 div 来水平对齐 我想创建 3 行 在每行中 我希望 div 以不同的速度水平向左移动 检查此 giphy 以获取视觉参考 http www giphy com gifs ME8Av6LT9hgymDnqSP
  • 我可以为 Twitter Bootstrap 崩溃指定多个数据目标吗?

    我想在单击单个触发器时定位两个 div 来展开 那可能吗 您只需添加所有以逗号分隔的 iddata target
  • 必需:play.api.mvc.Request[?] => play.api.mvc.Result

    我正在迁移到 Play 2 6 并拥有以下曾经可以使用的 API 包装函数 trait API self Controller gt def api businessLogic Request AnyContent gt Any Actio
  • Jackson JsonView 未应用

    杰克逊2 2 2 ObjectMapper mapper new ObjectMapper mapper getSerializationConfig withView Views Public class mapper configure
  • 在 Windows 上安装 Mercurial Apache XAMPP 教程

    问完这个问题后 Windows Apache 上的 XAMPP Mercurial 安装 gt HgWebDir cgi 脚本错误 https stackoverflow com questions 2675764 xampp mercur
  • C++:编译错误 - “不会创建 .eh_frame_hdr 表”

    我应该使用数据分析程序进行物理实验 但我无法编译它 该代码很旧 与我能找到的当前 GCC 版本并不真正兼容 为了让事情变得更耗时 我从一个人那里得到了代码 他修改了所有 makefile 以使其在 Mac 上编译 我没有 C 经验 但凭借手
  • C++ 命令行字符串像 Java 一样吗?

    有没有办法像 Java 一样从命令行获取 C 字符串 public static void main String args 其中 args 是 C 字符串数组 不完全是 但你可以很容易地接近 include
  • 如何保证正确捕获并重新触发表单提交事件?

    这可能不是您常见的 如何捕获表单提交事件 问题 我试图理解恰恰jQuery vanilla Javascript 和浏览器 IE FF Chrome Safari Opera 如何处理表单提交事件 以及它们之间的关系 请参阅我的另一个问题
  • unix中nice和setpriority的区别

    我正在尝试用 C 语言实现 unix 的 nice 命令的不同风格 我已经看到了 Nice 系统调用和 setpriority 调用的定义 Nice 调用仅增加 减少进程的优先级 如果我想将进程的优先级设置为特定值 我不能使用nice 调用
  • connect/expressjs 中的“签名”cookie 是什么?

    我试图弄清楚 签名cookie 到底是什么 网上没有太多 如果我尝试这个 app use express cookieParser A secret 但仍然 Cookies在浏览器上仍然是100 正常的 而且我真的不知道这里的 签名 是什么
  • 如何使用 ZF3 设置延迟加载(任何地方都没有 ServiceLocator 模式)

    我正在编写一个新的 ZF2 应用程序 我注意到 从任何地方 调用服务的 ServiceLocator 使用模式已从 ZF3 中弃用 我想为ZF3编写代码 我能够设置我的控制器在构造函数时调用所有依赖项 但这意味着加载 即Doctrine在我
  • body-parser - 扩展选项(qs 与查询字符串)

    在当前版本中正文解析器 https github com expressjs body parser the extended使用时的选项bodyParser urlencoded 现在需要 在自述文件中 它解释了 扩展选项允许选择使用 q