关于 URL 中 “+“ 号变成空格的问题

当你在 URL 中传递参数时,加号 (+) 会被自动转换为空格,这是 URL 编码的标准行为。

问题原因

在 URL 中:

  • 空格会被编码为 +

  • 当 URL 被解码时,+ 号又会被转换回空格

  • 这会导致原始数据中的 + 号丢失

解决方案

你需要对参数值进行正确的 URL 编码:

javascript 复制代码
const params = `adH+NP1zvQ==`;
const encodedParams = encodeURIComponent(params);

const { code, data } = await get(`/接口?asd=${encodedParams}`);

说明

  1. encodeURIComponent() 函数会将特殊字符(包括 +, =, / 等)转换为它们的 URL 编码形式

  2. 这样处理后,+ 号会被编码为 %2B,在传输过程中就不会被误认为是空格

  3. 后端接收到参数后需要正确解码

相关推荐
xkxnq1 天前
第二阶段:Vue 组件化开发(第 17天)
javascript·vue.js·ecmascript
栈与堆1 天前
LeetCode 19 - 删除链表的倒数第N个节点
java·开发语言·数据结构·python·算法·leetcode·链表
豆苗学前端1 天前
你所不知道的前端知识,html篇(更新中)
前端·javascript·面试
一路向北·重庆分伦1 天前
03-01:MQ常见问题梳理
java·开发语言
txinyu的博客1 天前
结合游戏场景理解,互斥锁,读写锁,自旋锁,CAS / 原子变量,分段锁
开发语言·c++·游戏
sophie旭1 天前
内存泄露排查之我的微感受
前端·javascript·性能优化
阿里嘎多学长1 天前
2026-01-11 GitHub 热点项目精选
开发语言·程序员·github·代码托管
yuanyikangkang1 天前
STM32 lin控制盒
开发语言
txinyu的博客1 天前
HTTP服务实现用户级窗口限流
开发语言·c++·分布式·网络协议·http