从URL解码%20时出现问题

时间:2018-10-25 23:26:37

标签: javascript url decoding

我发现以下线程提供了一种非常有用的方法来创建永久链接或通过URL传递字符串值:

Original Thread

不幸的是,例如,如果您想通过URL将字符串“ test string”传递到特定的1 13 14 18 2 23 27 3 30 31 并将其显示为简单文本,则在以下情况下,上述线程似乎无法解码空格:您的网址如下:

 1
 2
 3
 13
 14
 18
 23
 27
 30
 31

该代码将简单地接受传递给“?”的URL中的任何内容。它将显示为“ simple%20text”。

是否有一种简单的方法可以执行类似于Thread's accepted answer的操作,以便所有%20都可以用空格替换?谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用decodeURI()

  

用字符替换编码的URI中的每个转义序列   它代表的内容,但不解码可能   尚未由encodeURI引入。字符“#”不是   从转义序列解码。

const result = decodeURI('http://www.abc123.org/subpage.html?test%20string');

console.log(result);