gpt4 book ai didi

ios - 类型 'Result' 的 Alamofire 值没有成员 'isSuccess' (Swift 5)

转载 作者:行者123 更新时间:2023-11-28 13:26:35 25 4
gpt4 key购买 nike

我有一个简单的程序,我在我的早期版本 (Swift 4) 中使用过它。我现在已经更新到新版本(Swift 5、Alamofire 5.0.0-rc.2),因为我还是初学者,所以遇到了问题。我已经可以重写一些代码部分。

let headers: HTTPHeaders = [
"SubscriptionKey": SubscriptionKey,
"Host": HostName
]

AF.request(URL(string: userInfoUrl)!, method: .get, parameters: nil, encoding: JSONEncoding.default, headers: headers)
.validate()
.responseJSON { response in
guard response.result.isSuccess else {
log.error("Error requesting user ID: \(String(describing: response.result.error))")
completion(false, nil)
return
}

guard let json = response.result.value as? [String: Any], let userId = json["userId"] as? String else {
log.error("Malformed result from API call.")
completion(false, nil)
return
}

response.result.isSuccess 是不可能的。我怎样才能重用这部分?

错误:“Result”类型的值没有成员“isSuccess”

作为一个可能的解决方案,我将测试上面的解决方案。

AF.request(URL(string: userInfoUrl)!, method: .get, parameters: nil, encoding: JSONEncoding.default, headers: headers)
.validate()
.responseJSON { response in
switch response.result{
case .success(let value):
//succcess, do anything

case .failure(let error):
log.error("Error requesting user ID: \(String(describing: response.error))")
completion(false, nil)
return
}

最佳答案

结果包含.success.failure 情况。

所以你应该这样对待isSuccess

switch response.result {
case .success(let value):
//success, do anything
case .failure(let error):
//failure
}

关于ios - 类型 'Result<Any, AFError>' 的 Alamofire 值没有成员 'isSuccess' (Swift 5),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58268095/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com