這個問題已經被問了上百次,但互聯網並沒有幫助,主要是因爲我對swift和編程很陌生,所以我提前道歉。在swift中提取JSON數據
我想從json中提取一些數據。
這裏是我的代碼:
let request = NSMutableURLRequest(url:myUrl! as URL);
request.httpMethod = "POST";
let postString = "email=\(email)";
request.httpBody = postString.data(using: String.Encoding.utf8);
let task = URLSession.shared.dataTask(with: request as URLRequest){
data, response, error in
if error != nil {
print("error=\(error)")
return
}
var err: NSError?
do
{
let myJson = try JSONSerialization.jsonObject(with: data!, options: JSONSerialization.ReadingOptions.mutableContainers) as AnyObject
print(myJson)
let name = myJson["name"]
}
catch let error as NSError {
err = error
}
}
task.resume()
這裏是JSON出print(myJson)
:
(
{
name = "TestTest";
}
)
但是我收到一個錯誤:
let name = myJson["name"]
fatal error: unexpectedly found nil while unwrapping an Optional value (lldb)
你的JSON頂層的對象應該是一個數組或字典,你需要序列化你的對象 –
一如往常,但沒有涉及到的問題'mutableContainers '在Swift中完全沒有意義。並且不要在Swift 3中使用'NSURL/NSMutableURLRequest'。有一些本地結構'URL/URLRequest'。 – vadian
好的,謝謝你的建議! – Jonas