美文网首页
Moya 使用记录

Moya 使用记录

作者: _风雨 | 来源:发表于2021-09-08 16:53 被阅读0次

今天在使用Moya时,path中含有 ? 经过编码会被转义为 %3F ,导致404请求失败,谷歌半天,找到解决办法之一是将含有 ? 的 path 放入 baseUrl中,这样就不会被转义了

下面是伪代码

var baseURL: URL {
    switch self {
    case .login(token:  _, accessToken:  _):
        return URL(string: apiHost + "/api/token?")!
    }
}

var path: String {
    switch self {
    case .login:
        return ""
    }
}

一次使用requestParameters 传参时,因为parameters中有一个参数是数组,URLEncoding.default 内部自动 判断了数组,并且在 key后面加了 [], 如下图


image.png

所以设置encoding的时候需要设置为noBrackets

.requestParameters(parameters: ["hxIds": hxIds].merged(with: publicParams()), encoding: URLEncoding(arrayEncoding: .noBrackets))

相关文章

网友评论

      本文标题:Moya 使用记录

      本文链接:https://www.haomeiwen.com/subject/okivwltx.html