我正在尝试从服务器获取以下json响应:
[{"m", "OK"}]
我使用了以下代码,当我在模拟器中玩游戏时可以完美运行,但是当我生成存档以上传到苹果商店时,它出现了错误
"下标"的模棱两可的使用
func funcao(completo: () -> Void, falha: () -> Void){
let parametros = [
"operacao" : "update",
"tabela" : "1"
]
Alamofire.request(.POST, UrlServerPOST, parameters: parametros)
.responseJSON { response in
if let JSON = response.result.value {
print("JSON: (JSON)")
if let item = JSON[0] as? [String: String] { //Error here
if let resp = item["m"] as? String {
print(resp)
if resp == "OK" {
completo()
}
else
{
falha()
}
}
else
{
falha()
}
}
else
{
falha()
}
}
}
}
我尝试了几种方法来解决此错误,但没有任何解决。有人知道如何解决这个问题吗?
每个 JSON 对象要么是字典,要么是数组。你必须告诉 Swift 用键(作为字典)或整数索引(作为数组)下标它。看起来JSON
这里是一个数组。更改此行:
if let JSON = response.result.value as? [AnyObject] {
// ...
}