Swift 4中针对'(撇号)[重复]的编码输出百分比不正确

问题描述 投票:0回答:1

这个问题在这里已有答案:

我正在编码我的字符串来打网页服务。我正在使用addsPercentEncoding(withAllowedCharacters:CharacterSet)来编码我的String。

一切正常,除了'(撇号)字符被编码为%E2%80%99而不是%27。

    if let _keyword = keyword?
        .addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed) {
        parameters?["keyword"] = _keyword
    }

例如:

当关键字是Maggie时,输出=“Maggie%E2%80%99s”而不是“Maggie%27s”。

当关键字是Jelly Extracts输出为“Jelly%20Extracts”时,输出对其他人来说很好。

那么,我如何正确编码'(撇号)到%27

编辑:当我传递静态文本时,如“Maggie's.addingPercentEncoding(withAllowedCharacters:.urlQueryAllowed)”输出是正确的但是当我将它包装在变量输出中时出现错误。

ios swift urlencode
1个回答
-1
投票

而不是urlQueryAllowed使用alphanumerics

let originalString = "Maggie's"
let escapedString = originalString.addingPercentEncoding(withAllowedCharacters: .alphanumerics)
print(escapedString) // Optional("Maggie%27s")
© www.soinside.com 2019 - 2024. All rights reserved.