需要一些非常基本的帮助..我是swift的新手,无法在任何地方找到一个好的解决方案.. 我知道它非常基本,但JSON和Swift比我想的更难:')
Alamofire.request("https://website.com/foobar").responseJSON { response in
let title = ""
var message = ""
if let result = response.result.value {
let JSON = result as! NSDictionary
print(JSON) // prints correctly the json
// {
// id: 29,
// title: "Foobar",
// email: "the@adress.nu",
// city: "Berlin",
// name: "John Doe",
// consumer_iban: null,
// updated_at: "2017-04-18 23:47:44"
// }
for(key,value) in JSON{
print("key \(key) value2 \(value)")
// this is correct shown too
}
}
但我想要的是以下内容:
if(key == "title") {
title = value;
}
else {
message += (\(key): \(value))
}
但是那个连接并将字符串称为字符串doensn无法正常工作。
答案 0 :(得分:0)
你可以做到
let title = JSON["title"]
答案 1 :(得分:0)
首先不要在Swift中使用NSDictionary
,否则会丢弃类型信息
let JSON = result as! [String:Any]
问题是缺少双引号,你需要那些用于String Interpolation。
if key == "title" {
title = value
}
else {
message += "\(key): \(value)"
}
顺便说一句:Swift中不需要围绕if
条件和分号的括号