nodejs里面的百分号解码之URLSearchParams

问题

需要对请求参数解码,并转化成对象。

解决

使用URLSearchParams进行对象状态,类似如下代码:

javascript 复制代码
const paramsString1 = "http://example.com/search?query=%40";
console.log(searchParams1.get("http://example.com/search?query")); // "@"(等价于 decodeURIComponent('%40'))

这就不再需要用decodeURIComponent来解码百分号编码了。

具体转对象实现:

js 复制代码
export const convertStringToObject = (convertString) => {
    const params = new URLSearchParams(convertString);
    const obj = {};

    for (const [key, value] of params.entries()) {
        obj[key] = value;
    }

    return obj;
};

参考

相关推荐
全栈项目管理程序猿4 小时前
ArcGIS JS 基础教程(18):SceneLayer 场景图层
javascript
leoZ2314 小时前
第 2 篇:搭建地基——Vue3 + Vite + Tailwind v4 + shadcn-vue
前端·javascript·vue.js·人工智能·目标检测·数据挖掘·语音识别
IT_Octopus4 小时前
JSON 日志里的 `{“$ref“:“$.xxx“}`:从 fastjson 兼容包到原生 fastjson2 的迁移实录
开发语言·python·json
geovindu4 小时前
python:HandWriting Recognition using paddlepaddle
开发语言·后端·python·paddlepaddle
七牛开发者5 小时前
拆解 dsh:Session 的事件溯源与状态重建
javascript·github·agent
梨想橙汁5 小时前
JS BOM 浏览器对象:定时器与同步异步底层理解
前端·javascript
梨想橙汁5 小时前
ES6+ 必用新特性:箭头函数、解构、模板字符串、扩展运算符
前端·javascript
梨想橙汁5 小时前
DOM 与 JS 事件:页面元素操作、事件冒泡、事件委托实战
前端·javascript
wuyk5555 小时前
Python 零基础入门第九章:用户输入与 While 循环
开发语言·python
兮动人5 小时前
Python变量与常量
开发语言·python·机器学习·python变量与常量