网页如何给js后台传递数字类型参数

embedded/2024/10/21 4:07:15/

网页无法通过get方法传递数字参数给js后台,就是网页端写的是数字参数,传递给后台也变成了数字字符串。而js对数字类型和字符串类型是不相同的。由于我们的代码是通过中间件挂载接口的,通过joi库检查参数。

javascript">const Joi = require('joi');
//注意:pageSize为0代表不拉取列表数据,只是获取页面总数
const pagingJoi = {page: Joi.number().min(1).required().error(new Error('页码不能小于1')),pageSize: Joi.number().min(0).required().error(new Error('页码数量不能小于0')),
};const queryTestSchema = Joi.object({page: pagingJoi.page,pageSize: pagingJoi.pageSize,
});

使用的代码如下:

javascript">    @route('GET', '/erp/queryTest')@middleware(validateSchemaJoi(queryTestSchema))async qqueryTest(ctx) {const data = Util.getRequestData(ctx);const result = await StatisticsConsultantService.queryTest(data);return ctx.cc('查询成功', true, result);}

当用get请求传递参数时,数字类型的参数page和pageSize会被自动转换成字符串类型。导致校验失败。
解决方案一:把请求修改为POST请求;
方案二:不用中间件校验数字参数,在处理函数强制转换成数字类型,再在里面进行校验。

javascript">    page = Number(page);pageSize = Number(pageSize);

同理,当网页通过get请求给后台传递一个数组对象也会被转化为字符串类型。采用post方式可以传递数组类型的对象。


http://www.ppmy.cn/embedded/45153.html

相关文章

Vue2 + Element UI 封装 Table 递归多层级列表头动态

1、在 components 中创建 HeaderTable 文件夹&#xff0c;在创建 ColumnItem.vue 和 index.vue。 如下&#xff1a; 2、index.vue 代码内容&#xff0c;如下&#xff1a; <template><div><el-table:data"dataTableData"style"width: 100%"…

算法第三天力扣第69题:X的平方根

69. x 的平方根 (可点击下面链接或复制网址进行做题) https://leetcode.cn/problems/sqrtx/https://leetcode.cn/problems/sqrtx/ 给你一个非负整数 x ,计算并返回 x 的 算术平方根 。 由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。 注意:不允许使用任何内…

nn.Embedding使用

nn.Embedding使用 Embedding.weight会从标准正态分布中初始化成大小为&#xff08;num_embeddings, embedding_dim&#xff09;的矩阵 PE矩阵的作用就是替换这个标准正态分布 input中的标号表示从矩阵对应行获取权重来表示单词 # 1.设置embedding结构 max_seq_len 1000 # 句…

L9110S电机控制模块

1.L9110s控制小车前进后退左右 接通VCC&#xff0c;GND 模块电源指示灯亮&#xff0c; 以下资料来源官方&#xff0c;但是仍需我们调制 &#xff08;前进&#xff09;&#xff1a; L1A输入低电平&#xff0c;L1B输入高电平 R1A输入低电平&#xff0c;R1B输入高电平 &a…

Github Page 部署失败

添加 .gitmodules 文件 [submodule "themes/ayer"]path themes/ayerurl https://github.com/Shen-Yu/hexo-theme-ayer.git 添加 .nojekyll 文件

大模型管理工具Ollama搭建及整合springboot

目录 一、Ollama介绍 1.1 什么是Ollama 1.2 Ollama特点与优势 二、Ollama本地部署 2.1 版本选择 2.2 下载安装包 2.3 执行安装 2.4 Ollama常用命令 三、使用Ollama部署千问大模型 3.1 千问大模型介绍 3.2 部署过程 四、springboot接入Ollama 4.1 引入Ollama依赖 4…

Oracle dblink 发现Network 等待事件的分析 enq: KO - fast object checkpoint

所有的sql 通过dblink 查询全部等待中&#xff0c; 同一个SQL 20多个session 在跑&#xff0c;等待事件network&#xff0c;可能怀疑是不是网络断开了&#xff0c;导致没有返回 执行sql 如下&#xff1a; BEGIN Xdblink ; END; 去到dblink 所在的db&#xff0c;发现20多个sql在…

jpeg编码学习

正点原子stm32教程提到过jpeg解码库libjpeg&#xff0c;但是没有提到jpeg编码&#xff0c;我也好奇jpeg编码怎么实现&#xff0c;用代码怎么生成jpeg文件的。所以最近学习了jpeg编码&#xff0c;在这里做记录。 参考文章 jpeg图片格式详解 https://blog.csdn.net/yun_hen/art…