Я пытаюсь узнать, как использовать AlamoFire, и у меня возникают проблемы.
Мой метод до сих пор выглядит следующим образом:
func siteInfo()->String?{
var info:NSDictionary!
var str:String!
Alamofire.request(.GET, MY_API_END_POINT).responseJSON {(request, response, JSON, error) in
info = JSON as NSDictionary
str = info["access_key"] as String
//return str
}
return str
}
Это возвращает значение nil, которое является проблемой. Из того, что я прочитал здесь, это связано с тем, что запрос может занять некоторое время, поэтому закрытие не выполняется до момента возврата. Предлагаемое решение о переносе возврата в закрытие не работает для меня, и компилятор просто кричит (добавление ->String
после (request,response,JSON,error)
, которое дает "String", не является подтипом void "). То же самое касается другого решения.
Любые идеи? Даже некоторый исходный код, не связанный с этой проблемой, который использует AlamoFire, был бы полезен.
Спасибо!