浏览器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
相关推荐
宇木灵7 分钟前
考研数学-高中数学回顾函数的微分day8(完结)
笔记·学习·考研·数学·函数·导数·微分
一个人旅程~10 分钟前
《七重时间的织锦》-致初七
windows·经验分享·笔记·微信公众平台
空条jo太郎10 分钟前
echarts图表联动
前端
webkubor10 分钟前
2026 年 把网页交互的主控权拿回前端手中 🚀
前端·javascript·人工智能
今儿敲了吗19 分钟前
28| A-B数对
数据结构·c++·笔记·学习·算法
凯里欧文42720 分钟前
极简版前端版本检测方案
前端·webpack
Desirediscipline21 分钟前
#include<limits>#include <string>#include <sstream>#include <iomanip>
java·开发语言·前端·javascript·算法
青青家的小灰灰21 分钟前
深入解析 React 中的 useCallback:原理、场景与最佳实践
前端·react.js
摇滚侠26 分钟前
RocketMQ 教程丨深度掌握 MQ 消息中间件,笔记 39-44
笔记·rocketmq
HelloReader26 分钟前
Nuxt 4.2 + Tauri 2 接入指南把 Vue 元框架“静态化”后装进桌面/移动端
前端