调用后台API的时候出现的一个奇怪字符%E2%80%8B

在调用后台API的URL地址上,

/api/user/1
类似这样的地址,但是到了浏览器编译后发现斜杠之间有
%E2%80%8B这样的字符导致了调用接口出现404 的错误,这个在用光标移动的时候会明显发现到了特殊字符的地方是无法移动的而且无法显示在屏幕上,这时候只要按拖一下删除键就可以删除这样奇怪的字符了
 

问题背景
今天测试发现一个很奇怪的问题,云端返回的图片链接看起来没有任何问题,但是在网页中打开的时候就是报错,找不到这个图片。

结果按住command键,鼠标点击这个URL,发现这个URL后面带了%E2%80%8B这个字符,导致图片找不到。

在返回数据的时候移动光标是可以发现这个字符的。

原因
经调查这个特殊字符叫 Zero-width space,简称 ZWSP,中文名 零宽空格;它是一种不可打印的Unicode字符,就是说一般情况 肉眼看不见 ,但是当它变成URL的一部分,就会变成 %E2%80%8E ,使你的URL错误,请求的时候就会报 404.
在HTML中的编码为:​ ,在HTML页面中,零宽空格可以替代,一般用于可能需要换行的地方。 在标点之前为 URL 换行,以便避免将标点符号留在行尾,让读者将 URL 的末尾搞错。
————————————————
版权声明:本文为CSDN博主「vieber」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sufubo/article/details/117223508

posted on 2021-09-11 09:56  静以修身俭以养德  阅读(777)  评论(0编辑  收藏  举报

导航