前端对于浏览器参数被转换(+转换成空格了)的事儿

在这里插入图片描述
1.如图参数在浏览器中的表现形式,'+'号被转成了空格了。
原因: 经过查找资料,有部分解释如下

  1. 问题解释来源

html中因为一些非标准的做法,将+等同于空格进行处理 (当Html的表单被提交时,每个表单域都会被Url编码之后才在被发送。由于历史的原因,表单使用的Url编码实现并不符合最新的标准。例如对于空格使用的编码并不是%20,而是+号,如果表单使用的是Post方法提交的,我们可以在HTTP头中看到有一个Content-Type的header,值为application/x-www-form-urlencoded,大部分应用程序均能处理这种非标准实现的Url编码)。

处理方式:

  1. 通过提前对字符编码再传输参数,如:(jak%2Bpink)这样传入参数,只不过要配合后端处理。
  2. 改变请求方式,content-type:的值,但这个是json的传参形式
headers: new HttpHeaders({ 'Content-Type': pplication/json' })

在这里插入图片描述

在这里插入图片描述

  1. 对于目前所使用的框架(Angular.11)来处理这个问题
    angular的处理方式.主要就是解决encoder的参数编码并替换问题
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值