EncodeURIComponent/DecodeURIComponent 像“é”这样的字符

EncodeURIComponent/DecodeURIComponent with characters like "é"

我有一个 Web 应用程序,带有一些下拉列表。 其中一个列表有一些带重音的参数,例如:"Bonjour/COUCOU SPéCIALISTE/AB12345"

所以当我 select 它并进行研究时,我最终得到以下结果 url:

abcdefgh.com/someFunction?way=null&motive=bonjour%2Fcoucou+spécialiste%2FAB12345

在我的函数中,我有:

var somethingPercentage = getSomethingPercentage(
    decodeURIComponent(queryParams.way),
    decodeURIComponent(queryParams.motive)
);

并且,在一个配置文件中,我将匹配的参数设置成这样:

"bonjour/coucou+spécialiste/ab12345": 0.01

结果,我打错电话了。 但是当我select一些没有重音的参数时,我没有这个问题,结果很好。

参数有space.

也是一样的问题

为什么会发生这种行为?

刚找到。

我刚刚把

logger.info(decodeURIComponent(queryParams.motive));

在以下代码之后:

var somethingPercentage = getSomethingPercentage(
decodeURIComponent(queryParams.way),
decodeURIComponent(queryParams.motive));

现在,我找到了匹配的必要值。

这不是“é”的问题,而是 space 的问题。