gpt4 book ai didi

ios - Swift:字符串 url 编码没有按预期工作

转载 作者:搜寻专家 更新时间:2023-10-31 08:16:29 27 4
gpt4 key购买 nike

所以我有一个这样的 url:

let remoetURL = "http://xxx-test.img-cn-hangzhou.aliyuncs.com/materials/talk_-XXXXX-XXXXXXX/STEM RULE.pdf"

如您所见,在 url 的末尾有一个空格,所以我需要去掉它以获得有效的编码 url。

经过一些研究,我意识到我可以使用

let escapedString = remoteURL.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLPathAllowedCharacterSet())

但这并没有返回预期的工作 url,因为它也在“http”之后编码了“:”

http%3A//xiaobandeng-staging.img-cn-hangzhou.aliyuncs.com/talk_materials/talk_-K4yjX4-238Ku74WVIJk/STEM%20RULE.pdf

我也尝试过 URLHostAllowedCharacterSet,但没有成功。所以我想是不是因为我这里没有www,所以不能正确识别哪部分是host。如果是这样,优雅的解决方案可能是什么?我知道我可以通过调用 stringByReplacingOccurrencesOfString 将空格替换为 %20,但这似乎有点脆弱。

提前致谢。

最佳答案

尝试使用 SwiftyJSON

让 urlString = remoteURL.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet())

swift 3:

让 urlString = remoteURL.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)

关于ios - Swift:字符串 url 编码没有按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37894176/

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