关于http url带有特殊符号(get请求参数组类型传送)解决传特殊字符。
2024-01-07 17:26:21
一? ?前端 http get 数组类型传参的形式(特殊中括号)
发关http get请求后台参数是数组类型时,你可以使用方括号 []
来表示参数是一个数组。这通常被称为 "Query String Array" 或 "URL-encoded array"。下面是一些示例,演示了如何在URL中设置数组参数:
1使用方括号:
http://test.com/api/resource?param[]=value1¶m[]=value2¶m[]=value3
?如果是使用axios框架get时,默认会转换成这种格式。
2重复参数名
http://test.com/api/resource?param=value1¶m=value2¶m=value3
3混合使用:
http://test.com/api/resource?param=value1¶m[]=value2¶m[]=value3
允许你在数组中包含有一个值,方便动态添加多个值到数组中。
二? 后端处理带有特殊符号URL
? ? ? ? ? 有些后端处理遇到url包含特殊符号时会报错:Invalid character found in the request target?,而有些后端就能处理,这与后端采用的框架所处理的数据方法用关。
在URL中,有一些字符是被允许的,而有一些字符则是被禁止的。
对于数组类型的参数,你可以使用一些URL编码方式来确保URL中的字符都是有效的。例如,使用百分号编码(percent encoding)来替代特殊字符。以下是一些可能导致问题的字符和它们的编码方式:
-
方括号
[
和]
:[
编码为%5B
]
编码为%5D
在URL中,你可以将
param[]
编码为param%5B%5D
。 -
其他特殊字符:
- 等号
=
编码为%3D
- 和号
&
编码为%26
- 空格编码为
%20
或+
- 等号
确保将所有非标准字符进行适当的URL编码,以避免导致请求错误。要使用内置的URL编码函数,例如 encodeURIComponent(
JavaScript)。通过使用这些函数,你可以确保URL中的参数是有效的,并且符合RFC 7230和RFC 3986的规范。
?
?
文章来源:https://blog.csdn.net/qyhua/article/details/135427540
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!