gpt4 book ai didi

javascript - 使用减号更改 url 中的空格

转载 作者:行者123 更新时间:2023-12-02 23:35:38 25 4
gpt4 key购买 nike

我正在努力解决以下问题:当用户将某些对象上传到具有包含空格或非拉丁字符(如ლ等)属性的服务器时,该对象最初保存在数据库中(我使用的数据库支持utf8)编码)但问题是我想在 url 中使用该属性(例如名称:საქართველო),但 url 不支持 utf8 字符。你会说只需替换它们,但还有另一个问题:我在服务器端(Expressjs)中使用该属性作为 url 参数,如果我像 .split(' ').join('-')< 那样更改它们,它会影响我的参数吗?如果“name”是“hello world”并且更改为“hello-world”会影响结果吗?目前,空格已更改为 %20 并且可以正常工作。和第二个问题。我如何将每个非拉丁字符更改为拉丁字符(在我的示例中 q-ქ、w-წ 等,但也有许多不同的非拉丁字母)我应该用手更改它们还是有一些 api 或其他东西? p>

谢谢!

最佳答案

我认为您正在寻找的是encodeURI()

encodeURL("საქართველო"); 
//returns "%E1%83%A1%E1%83%90%E1%83%A5%E1%83%90%E1%83%A0%E1%83%97%E1%83%95%E1%83%94%E1%83%9A%E1%83%9D"

更新

for(var i=0; i<str.length; i++){
var charAtIndex = str[i];
var encodedCharAtIndex = encodeURI(charAtIndex);

if(charAtIndex != encodedCharAtIndex){
//char is non-utf8
}
}

关于javascript - 使用减号更改 url 中的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56299391/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com