首页 > 其他分享 >当字符串中含有%,先使用 encodeURI 进行编码,再使用decodeURI解码报错

当字符串中含有%,先使用 encodeURI 进行编码,再使用decodeURI解码报错

时间:2023-08-21 17:11:11浏览次数:37  
标签:编码 decodeURI url 解码 报错 encodeURI

报错原因:decodeURI不允许参数有%,它会自动把%25转义为%,这个转义后的%导致的报错

解决方法一

在解码decodeURI 之前将%替换为%25

编码:url = encodeURI(encodeURI(url));

解码:

url= url.replaceAll("%","%25");

url= decodeURI(decodeURI(url));

解决方法二

在编码encodeURI之前就将%替换为一个独特的字符串,解码之后再替换回来

编码:

url = url.replaceAll("%","baifenhao");

url = encodeURI(encodeURI(url));

解码:

url= decodeURI(decodeURI(url));

url = url.replaceAll("baifenhao","%");

标签:编码,decodeURI,url,解码,报错,encodeURI
From: https://www.cnblogs.com/BKYhailong/p/17646477.html

相关文章

  • 跨版本迁移数据报错tables declared WITH OIDS are not supported
    瀚高数据库目录环境症状问题原因解决方案环境系统平台:Linuxx86-64RedHatEnterpriseLinux7版本:6.0症状迁移数据还原数据库时报错ERROR:tablesdeclaredWITHOIDSarenotsupported问题原因Postgresql12后取消了OIDS=TRUE的用法。解决方案修改脚本中的语句脚本中出现OIDS=T......
  • 报错注入
    什么是报错注入?报错注入是一种页面响应形式。响应过程如下:用户在前台页面输入检索内容 ↓后台将前台页面上输入的检索内容无加区别的拼接成sql语句,送给数据库执行↓数据库将执行的结果返回给后台,后台将数据库执行的结果无加区别的显示到前......
  • mysql登陆数据库报错Segmentation fault (核心已转储)的解决办法
     转自:https://bbs.cnbugs.com/read-43-1.html今天在登陆新安装好的数据库报如下错误: [root@lnmp~]#mysql-uroot-pEnterpassword:WelcometotheMySQLmonitor.Commandsendwith;or\g.YourMySQLconnectionidis13Serverversion:8.0.21 Copyright(c......
  • Asp.net Core Web API 启动时出现报错Failed to load API definition
    1、新建的Asp.netCoreWebAPI项目启动时一般是没有问题的,如果在controller下增加多个操作后再启动会出现swagger的报错-FailedtoloadAPIdefinition,基本是由于以下两种原因,分别排查即可: (1)如上图1位置:默认webapi模板创建时只有一个方法所以没有[action] 当我们增加多个......
  • 运行Jar包出现:xxx中没有主清单属性报错
    1、项目打好jar包时,使用命令运行jar包:java-jarxxx.jar出现报错:xxx中没有主清单属性 解决办法:亲测有用在pom.xml配置中,加上以下配置:<build><!--打包成jar包时的名字--><finalName>xxxTest</finalName><plugins><plugin>......
  • ffpyplayer源码编译报错:ffpyplayer/tools.pyx:182:28: Cannot assign type 'void (*)(
    编译ffpyplayer报错,具体错误如标题。  报错信息:ffpyplayer/tools.pyx:182:28:Cannotassigntype'void(*)(void*,int,constchar*,va_list)except*nogil'to'void(*)(void*,int,constchar*,va_list)noexceptnogil'  解决方法:pipinstallblos......
  • mysql 8 - linux 安装后 java 调用报错 SQLException: Temporary file write failure
    完整报错Cause:java.sql.SQLException:Temporaryfilewritefailure.;uncategorizedSQLException;SQLstate[HY000];errorcode[1878];Temporaryfilewritefailure.;nestedexceptionisjava.sql.SQLException:Temporaryfilewritefailure.解决不要作用在......
  • mysql在启动时报错"Failed to open log xxxxxx/mysql-bin.000003 not found,errno 2"
    问题描述:mysql在启动时报错"Failedtoopenlogxxxxxx/mysql-bin.000003notfound,errno2",如下所示:数据库:mysql5.5.18系统:rhel6.564位架构:一主一从场景描述:主库最新binlog文件被手动删除后,重启数据库报错.1、异常重现23082014:52:19InnoDB:1.1.8started;logseque......
  • vuepress 安装报错问题
    关于vuepress部署出现样式的问题及解决6月前作者:我yi癫狂分类: 博客文章阅读(35)原文违法举报 目录vuepress部署出现样式问题vuepress个人博客部署遇到的一些问题1、js和css出现404问题2、每次都要重复操作打包、运行、上传github很麻烦怎么办?3、github.io无法打开怎......
  • Django 登录页面优化的报错总结
    Django登录页面优化的报错总结在登录页面进行优化过程中,遇到的一些报错这边总结了一些希望会对读者有所帮助。调用new_key=CaptchaStore.generate_key()报错在调用CaptchaStore.generate_key()时出现错误,请确保您已正确设置了django-simple-captcha库。请按照以下步骤检查......