Использование ответа в нескольких местах iOSIOS

Программируем под IOS
Ответить
Anonymous
 Использование ответа в нескольких местах iOS

Сообщение Anonymous »

Я попробовал много методов из Stack Overflow и Google
, но мне не удалось достичь того, что мне нужно.
Просто я хочу сохранить ответ от API запросить некоторую переменную
, чтобы я мог свободно ее использовать.
Вот код:

Код: Выделить всё

import UIKit

class ViewController: UIViewController {

@IBOutlet weak var responseLabel: UILabel!
let apiUrlStr = "http://jsonplaceholder.typicode.com/posts"

var resData = NSArray()

override func viewDidLoad() {
super.viewDidLoad()
request(.GET, apiUrlStr, encoding: .JSON).responseJSON { (_, _, JSON, _) in
let arr = JSON as NSArray
let user = arr[0] as NSDictionary
self.responseLabel.text = user.objectForKey("title") as? String

self.resData = JSON as NSArray //i cant get this from outside
}

println(resData) //prints nothing but empty parentheses while inside the request it prints the data right
}
}
поскольку у меня есть несколько классов, и каждый класс должен обрабатывать ответ по-своему, я хочу создать класс API с методом ответа, который будет возвращать ответ.Может быть, что-то вроде этого:

Код: Выделить всё

class api{
func req(url: String, params: NSDictionary){
//method goes here
}

func res() -> NSDictionary{
//method goes here
var response = NSDictionary()
return response
}
}
затем используйте его в viewdidload

Код: Выделить всё

let params = ["aaa","bbb"]
let api = api()
api.req(apiUrlStr, params)
let res = api.res()
***кстати, метод запроса, который я сейчас использую, принадлежит Alamofire.swift, и я не против использовать другой метод
Вот вот некоторые из сообщений и сайтов, за которыми я безуспешно пытался следить.
proper-way-to-pull-json-api-resoponse
link2
все приводят к одному и тому же результату только изнутри метода.

Подробнее здесь: https://stackoverflow.com/questions/282 ... ces-in-ios
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»