一、 ncodeURI encodeURIComponent
之前一直不了解这两个的区别,现在知道了:
-encodeURI
是对可以对整个请求地址进行转义
encodeURIComponent
只可用于转义单个参数
例子如下:
比如有这样一个地址需要转义并通过 js 请求,这里面的一些符号需要转义成对应的 URL 形式,比如一些标点,
汉字等都需要转义成域名地址那种
let str='../../course/exportStatisticsUserByCourse?courseId=12®ionId=2,52,2596,2597,2609&title=体育-北京-统计报表';
二、来看下区别,
encodeURIComponent
encodeURIComponent
是把输入的字符串作为一个整体,就是参数的实体,并不是 URL,所以所有/
都会被转义,成为单纯的字符串,失去任何域名的语义。
这个方法在处理单个参数时使用,如需要处理title
参数encodeURIComponent(体育-北京-统计报表')
encodeURIComponent(str);// 结果是这样的// ..%2F..%2Fcourse%2FexportStatisticsUserByCourse%3FcourseId%3D12%26regionId%3D2%2C52%2C2596%2C2597%2C2609%26title%3D%E4%BD%93%E8%82%B2-%E5%8C%97%E4%BA%AC-%E7%BB%9F%E8%AE%A1%E6%8A%A5%E8%A1%A8
而encodeURI
会保留其URL的原本语义,只处理参数中需要处理的
encodeURI
encodeURI(str);// 结果是这样的// ../../course/exportStatisticsUserByCourse?courseId=12®ionId=2,52,2596,2597,2609&title=%E4%BD%93%E8%82%B2-%E5%8C%97%E4%BA%AC-%E7%BB%9F%E8%AE%A1%E6%8A%A5%E8%A1%A8
三、总结
这两个都是用于处理域名地址的,根据自己需要使用即可。
热门文章
- 宠物粮食哪里批发便宜又好吃(宠物粮食在哪里进货)
- 4月11日→21.7M/S|2025年最新免费节点SSR/V2ray/Shadowrocket/Clash订阅链接地址
- netty系列之:netty中的核心MessageToByte编码器
- 宠物粮销售渠道策划方案 宠物粮销售渠道策划方案怎么写
- 开宠物店的坑有哪些种类(开宠物店到底赚不赚钱)
- 3月4日→19.1M/S|2025年最新免费节点V2ray/SSR/Clash/Shadowrocket订阅链接地址
- 分布式服务请求报错:Read timed out executing POST http://businessApi/app/app/login
- 3月23日→20.7M/S|2025年最新免费节点Shadowrocket/V2ray/Clash/SSR订阅链接地址
- 3月27日→19.3M/S|2025年最新免费节点Clash/Shadowrocket/SSR/V2ray订阅链接地址
- 3月13日→20.7M/S|2025年最新免费节点Shadowrocket/V2ray/SSR/Clash订阅链接地址