Я создал небольшой кусочек кода на игровой площадке xcode. (см. прикрепленную ссылку) и получил 2 вопроса.
введите описание изображения здесь
код:
import PlaygroundSupport
import Foundation
PlaygroundPage.current.needsIndefiniteExecution = true
//https://newsapi.org visit website to get API key
parseURL(theURL: "https://newsapi.org/v2/top-headlines?country=us&category=business&apiKey=c65fbb5007484819a3529c4f8c05adf1")
func parseURL(theURL:String){
let url = URL(string: theURL)
URLSession.shared.dataTask(with:url!) { (data, response, error) in
// is there an error? Error handling section
if error != nil {
print("did not work, \ (String(describing: error))")
DispatchQueue.main.asyncAfter(deadline: .now() ) { //
// just deal
}
// end of Error handling section
} else {
do {
let parsedData = try JSONSerialization.jsonObject(with: data!) as! [String:Any]
for (key, value) in parsedData {
if (key == "articles") {
print (value)
}
if (key == "author") {
print (value)
}
}
// end of JSON parsing section
} catch let error as NSError {
print(error)
DispatchQueue.main.asyncAfter(deadline: .now() ) { //
// Just Deal
}
}
}
}.resume()
} //end of function
Я получаю информацию о JSON.
Вопрос 1.
Почему в строке 6 появляется сообщение об ошибке «Использование неразрешенного идентификатора parseURL». он работает и выдает данные в функцию.
Вопрос 2.
Когда я перемещаю код из игровой площадки в область разработчика приложений xcode iOS, он даже не компилирует и не передает данные из-за ошибки в строке 6 (и мне действительно нужно связать строки печати в раскадровке)
введите описание изображения здесь
Надеюсь, вы поможете мне объяснить, что я делаю неправильно.