Ios 阿拉莫菲尔无法逃脱“/&引用;编码中
我正在为阿拉莫菲尔使用URLRequestConvertible 我有一个GET请求,因为我的url有一个“/”需要转义 请参见下面的示例,其中“NameToPass/23”现在有一个“/” 当我使用URLEncoding.default时,“/”没有编码,但服务器希望它使用%2F 但是如果我在制作relativepath时对它进行编码Ios 阿拉莫菲尔无法逃脱“/&引用;编码中,ios,swift,alamofire,nsurlsession,url-encoding,Ios,Swift,Alamofire,Nsurlsession,Url Encoding,我正在为阿拉莫菲尔使用URLRequestConvertible 我有一个GET请求,因为我的url有一个“/”需要转义 请参见下面的示例,其中“NameToPass/23”现在有一个“/” 当我使用URLEncoding.default时,“/”没有编码,但服务器希望它使用%2F 但是如果我在制作relativepath时对它进行编码 "NameToPass/23".addingPercentEncoding(withAllowedCharacters: CharacterSet.alphan
"NameToPass/23".addingPercentEncoding(withAllowedCharacters: CharacterSet.alphanumerics)
Alamofire将其编码两次,并使其成为“NameToPass%252F23”
下面是相同的示例代码
let encoding: ParameterEncoding = {
switch self {
case . getItemDetails:
return URLEncoding.default
}
}()
let url: URL = {
let relativePath: String?
switch self {
case .getItemDetails(let listName):
relativePath = "/mainAction/" + "NameToPass/23"
var url = URL(string: BaseURL)!
if let relativePath = relativePath { url = url.appendingPathComponent(relativePath) }
return url
}()
任何正确方向的暗示都将受到高度赞赏
谢谢据我所知,您只需要
NameToPass/23
转义即可?然后试试看
relativePath = "/mainAction/" + "NameToPass/23".addingPercentEncoding(withAllowedCharacters: CharacterSet.alphanumerics)
请看我的最新答案。As alamofire编码为“/”的两倍