我正在Request Adapter of Alamofire中尝试添加GET参数。但是,在请求适配器中,我只能添加HTTPHeader字段。

目前,我的request adapter看起来像:

// MARK: - RequestAdapter

func adapt(_ urlRequest: URLRequest) throws -> URLRequest {
    if let url = urlRequest.url, url.lastPathComponent.hasPrefix(baseURLString) {
        var urlRequest = urlRequest

        // Want to inject param here
        // e.g. urlRequest.addParam(param: "session", value: sessionToken")

        return urlRequest
    }

    return urlRequest
}

我为路径配置了一个路由器,但是由于我希望我的AuthHandler对所有与身份验证相关的内容负责,因此我想注入sessionToken。这可以确保与RequestRetrier一起处理所有与HTTP 401相关的错误。

更改urlRequest的最佳方法是什么?

最佳答案

你能试一下吗

let params: Parameters = ["session": sessionToken]
return URLEncoding.default.encode(urlRequest, with: params)

(要么)
return URLEncoding.queryString.encode(urlRequest, with: params)

谢谢
斯里拉姆

关于ios - 在Alamofire的请求适配器中添加GET参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41534967/

10-12 03:45