1

我收到来自 API 的响应,其中包含带有特殊字母的名称字符串,例如'é'.

然后我需要使用包含此名称的查询字符串向另一个 API 发出请求'é'。API 是不理解这些字母的第三方服务。

encodeURIComponent没有帮助,服务器仍然返回错误。

我想用现有的替代品替换特殊字符,例如'é'=>'e',是否有为此目的的库或一些现成的解决方案?

4

2 回答 2

1

这些字符被称为变音符号(更具体地说是 上面的这个小笔画e)。

这是一个 JS 库https://github.com/superjoe30/diacritics

您需要稍微修改它才能在没有任何模块加载器的情况下使用它。

只是换成exports.remove某事。喜欢window.removeDiacrits然后

str = removeDiacrits(str);

将代码包装在IIFE中可能是个好主意。

于 2013-11-10T09:40:11.793 回答
0

你试过了吗encodeURI

encodeURI- 对 URL 进行编码

encodeURIComponent- 对查询字符串参数进行编码

于 2013-11-10T09:51:34.220 回答