gpt4 book ai didi

ios - "Type ' Alamofire 4.0 上的任何 ' has no subscript members"错误

转载 作者:搜寻专家 更新时间:2023-11-01 07:20:01 31 4
gpt4 key购买 nike

我正在使用 Alamofire 4.0Swift 3.0,我正在使用以下代码来解析 JSON:

Alamofire.request(url!, method: .get, parameters: nil, encoding: JSONEncoding.default, headers: nil).responseJSON { (response:DataResponse<Any>) in

switch(response.result) {
case .success(_):
if let JSON = response.result.value{
print(JSON)
//print(JSON["name"])
//print(JSON["age"])
}
break

case .failure(_):
print("There is an error")
break
}
}

它给了我以下响应:

(
{
Name = "Peter";
Age = "18";
}
)

问题是我无法访问该值(NameAge),因为当我尝试执行 JSON["name"] 我收到以下错误:

Type 'Any' has no subscript members

我也试过添加 as? [String: Any] 作为这个问题的建议:Alamofire fire variable type has no subscript members另一个也建议:Type Any has no subscript members Error in Swift 3.0?但是当我使用它时,任何回应都会给我。

如果我使用:

case .success(_):
if let JSON = response.result.value as? [String: Any]{
print(JSON)
print(JSON["TitularEmail"] as! String)
}
break

Xcode 或 Xcode 控制台中均未显示任何错误。相反,没有给出任何响应。

如何正确解决这个错误?没关系,在我没有收到任何错误之前使用解决方案,但我也没有收到任何响应,所以它根本没有修复它。

提前致谢!

最佳答案

试试下面的代码:

Alamofire.request(url!, method: .get, parameters: nil, encoding: JSONEncoding.default, headers: nil).responseJSON { response in

switch(response.result) {
case .success(_):
if let JSON = response.result.value as! [[String : Any]]!{
print("JSON: \(JSON)")
let dic = JSON[0] as [String:AnyObject]!
print("TitularEmail : ",dic?["TitularEmail"])
}
break

case .failure(_):
print("There is an error")
break
}
}

关于ios - "Type ' Alamofire 4.0 上的任何 ' has no subscript members"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39655771/

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