javascript使用unicode字符转到url

mos*_*mos 6 javascript unicode url angularjs

我有一个数组,其中包含一些这样的网址:

[
  "path/to/url1",
  "path/to/url2",
  "path/url/unicóde.txt"
]
Run Code Online (Sandbox Code Playgroud)

我正在使用angular,ng-repeat我创建了一个可点击列表,执行重定向到所需的URL,但是,当我点击unicode url时,浏览器无法找到它.

我尝试encodeURI("path/url/unicóde"),但它检索这个: path/url/unic%C3%B3de.txt找不到.相反,当我手动访问:( path/url/unicóde.txt这是在一个ftp,所以,我按文件夹逐个文件夹,直到到达文件)浏览器中的URL现在说:path/url/unic%F3de.txt,这与给我的值不同encodeURI( ).

那我怎么可以clic到这个列表项并被重定向到所需的unicode网址?

这里的代码:html:

<md-list-item ng-repeat="found in foundFiles">
        <h3>{{ found.name }}</h3>
        <p ng-click="openFtpLink(found.url)">{{ found.url}}</p>
    </md-list-item>
Run Code Online (Sandbox Code Playgroud)

JavaScript的:

$scope.foundFiles = [...]
$scope.openFtpLink = function (ftpLink) {
    var spawn = require('child_process').spawn;
    spawn('cmd.exe', ['/c', 'start', '', ftpLink]);
};
Run Code Online (Sandbox Code Playgroud)

这是一个带有电子+角度的app构建,我想要的是当用户点击该项目时,打开他的默认浏览器并将其重定向到url

Mun*_*wir 0

使用 JavaScriptescape()函数。它为您提供所需的输出。

\n\n

\r\n
\r\n
alert(escape("path/url/unic\xc3\xb3de.txt"));
Run Code Online (Sandbox Code Playgroud)\r\n
\r\n
\r\n

\n\n

注意:该escape()函数在 JavaScript 1.5 版本中已被弃用。

\n