关于 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. 后端接收到参数后需要正确解码

相关推荐
程序喵大人13 小时前
【C++进阶】STL容器与迭代器 - 01 STL 容器先解决元素放在哪里
开发语言·c++·stl
cui_ruicheng14 小时前
Python从入门到实战(十六):多进程编程
开发语言·python
shawxlee14 小时前
vue3在public下封装config.js自定义配置动态数据,可在打包后直接修改,方便后端部署及后续维护
前端·javascript·经验分享·vue·团队开发·js·项目优化
kyriewen15 小时前
我给前端项目的接口请求套了6层保护——才发现以前一直在裸奔
前端·javascript·面试
wdfk_prog15 小时前
嵌入式面试真题第 15 题:不可恢复异常后的通用崩溃快照、调用栈保存与离线分析架构
linux·开发语言·面试·架构
晴空了无痕15 小时前
从 Go 基础到 K8s:一条可落地的 Go 服务端成长路线
开发语言·后端·golang·kubernetes
神明不懂浪漫15 小时前
【第五章】Java中的继承与多态
java·开发语言
神州世通16 小时前
解密企业通信安全防线:Avaya Aura 三层安全架构深度解析
开发语言·php
郝亚军16 小时前
如何安装webstorm、Node.js和vue CLI
前端·javascript·vue.js
AC赳赳老秦17 小时前
企业工商公开信息采集分析:OpenClaw 批量查询企业工商信息,生成企业画像报告
大数据·开发语言·python·自动化·php·deepseek·openclaw