0
私はSwift 3にアプリケーションを更新しています.Alamofireを使用してRESTサーバーへのAPI呼び出しを処理しています。Alamofire 4 - 非関数型の値を呼び出すことはできませんHTTPURLResponse
extension Alamofire.Request {
func responseAllCareers(_ username: String, password: String, completionHandler: @escaping (DataResponse<Careers>) -> Void) -> Self {
let responseSerializer = DataResponseSerializer<Careers> { request, response, data, error in
guard error == nil else {
return .failure(BackendError.network(error: error!))
}
let JSONResponseSerializer = DataRequest.jsonResponseSerializer(options: .allowFragments)
let result = JSONResponseSerializer.serializeResponse(request, response, data, error)
guard case let .success(jsonObject) = result else {
return .failure(BackendError.jsonSerialization(error: result.error!))
}
switch result {
case .success(let value):
let api: APIMessage = APIMessage(json: value as! JSON)!
var careers: Careers = Careers()
// check for correct credentials
if api.result != "failure" {
careers = Careers(json: value as! JSON)
CacheManager.sharedInstance.storeCredentials(username, password: password)
CacheManager.sharedInstance.storeJsonInCacheByKey(CacheManager.CAREERS, json: value as! JSON)
careers.areCredentialsValid = true
}
return .success(careers)
case .failure(let error):
return .failure(error)
}
}
return response(responseSerializer: responseSerializer, completionHandler: completionHandler)
}
私は最後の戻りラインで非機能タイプ「HTTPURLResponse」エラーの呼び出すことはできません値を取得していますし、私はその理由を理解することはできません。これが私の関数です。