相关疑难解决方法(0)

类不符合协议RequestRetrier

我一直在将我的项目迁移到swift3,并一直在努力让Alamofire RequestRetrier协议工作.我关注了Alamofire 4.0迁移指南:https: //github.com/Alamofire/Alamofire/blob/master/Documentation/Alamofire%204.0%20Migration%20Guide.md#request-retrier

这是我正在尝试构建的类:

import Foundation
import Alamofire

class RequestAccessTokenAdapter: RequestAdapter, RequestRetrier {
    private let accessToken: String

    init(accessToken: String) {
        self.accessToken = accessToken
    }

    func adapt(_ urlRequest: URLRequest) throws -> URLRequest {
        var urlRequest = urlRequest

        if (urlRequest.url?.absoluteString.hasPrefix(MyServer.serverUrl()))! {
            urlRequest.setValue("Bearer " + accessToken, forHTTPHeaderField: "Authorization")
        }

        return urlRequest
    }

    func should(_ manager: SessionManager, retry request: Request, with error: Error, completion: @escaping RequestRetryCompletion) {
        if let response = request.task?.response as? HTTPURLResponse, response.statusCode == 401 {
            completion(true, 1.0) // …
Run Code Online (Sandbox Code Playgroud)

alamofire swift3

1
推荐指数
1
解决办法
633
查看次数

标签 统计

alamofire ×1

swift3 ×1