前言URL对于我们开发者来说应该很熟悉了。在为URL拼接参数时,我们通常直接进行字符串拼接或者使用模板字符串,因为这样很方便,但实际上我们在不知情的情况下以不安全的方式编写了URL。比如我们通常这样写:consturl=`https://www.baidu.com?model=${model}&locale=${locale}?query.text=${text}`这样真的很方便编写,但您可能会在不知不觉中将一些问题引入您的程序中。(以上代码为有问题的代码)如果本文对您有帮助,??关注+点赞??给作者打气,文章公众号首发,关注前端南九第一时间获取最新文章~FAQ不正确这个错误在新手中可能比较常见,但即使是有经验的程序员也不能绝对避免这个错误。这个错误的罪魁祸首绝大多数是在修改或移动代码之后。例如,您有一个格式良好的URL,然后将一个片段从一个片段复制到另一个片段,然后错过了参数分隔符的错误顺序。忘记编码很多时候我们的URL上的参数需要进行编码,因为URL参数可以是任何类型的文本,包括空格和特殊字符,这会给我们带来一些不可预知的问题。所以为了避免这种情况,我们经常这样写:consturl=`https://www.baidu.com?model=${encodeURIComponent(model)}&locale=${encodeURIComponent(locale)}&query.text=${encodeURIComponent(text)}`但是这种写法感觉很多余,不好看
