浏览器url地址栏空格变+号

问题描述,后台返回一个参数携带在url上面,发的时候是空格隔开的字符串,但是到了前端放到地址栏打开是一个+号。

类似于

ts 复制代码
//  后台返回的url
https://xxx.com?aa=a bxxx
// 打开浏览器后地址栏显示的
https://xxx.com?aa=a+bxxx

问了一下AI说是空格在 URL 中是特殊字符,需要进行编码才能正确传递。

而这里出现问题的原因极大可能是因为后台使用了encodeURIComponent 函数对 URL 进行编码,导致空格被转换为 %20。之后,浏览器在解析 URL 时,会将 %20 转换为 + 号

为了避免这个问题,

后台使用encodeURIComponent 编码

ts 复制代码
const url = encodeURIComponent('xsas xxa') // 得到  'xsas%20xxa'

前端使用decodeURIComponent 解码

ts 复制代码
// 'xsas%20xxa' 从浏览器地址栏的url中读取
const url = decodeURIComponent('xsas%20xxa') // 得到xsas xxa
相关推荐
智者知已应修善业19 分钟前
【利用proteus设计微型CPU,完成寻址相加数据的过程。】2025-2-26
驱动开发·经验分享·笔记·硬件架构·proteus·硬件工程
IT_陈寒31 分钟前
React useEffect里面写异步,我的状态怎么老丢?
前端·人工智能·后端
wok15734 分钟前
Git Bash 执行中文命令报错 127:MSYS 参数编码 bug 排查与修复
git·bug·bash
学计算机的计算基36 分钟前
二叉树算法下篇:递归核心技巧与高频面试题详解
java·笔记·算法
my_power52038 分钟前
大模型概述学习笔记
笔记·学习
AI视觉网奇1 小时前
BambuStudio 自定义加载页面
服务器·前端·javascript
橙子家1 小时前
Extension storage、Interest groups 和 Shared storage 简介-浏览器缓存之【隐私沙盒与扩展专用存储】
前端
YUS云生1 小时前
Python学习笔记·第28天:Git入门——版本控制与基础操作
笔记·python·学习
Yang_jie_031 小时前
笔记:数据结构(链表)
数据结构·笔记·链表
xiaoyuchidayuma1 小时前
【# 电压极限圆、电流极限圆、MTPA曲线、最大功率曲线的关系】
笔记·学习