現在サーバーサイドをphp、フロントをswiftでiosアプリを作っています。
自作のwebAPIをalamofireとswiftyJsonを使って叩き、取得した情報をviewに反映させたいのですが、
うまくいきません。
おそらくapiで情報を取得するよりも先にviewを描画してしまうことが原因かと思うのですが、これはどうすれば良いのでしょうか。
下記がソースコードになります。
import UIKit
import Alamofire
import SwiftyJSON
class UserViewController: UIViewController {
var user: User?
@IBOutlet var testLabel: UILabel! override func viewDidLoad() { super.viewDidLoad() getUser() } private func getUser(){ Alamofire.request(.GET, "http://localhost:8888/app_dev.php/api/user/1").responseJSON { (response) in guard let object = response.result.value else{ return } let json = JSON(object) let id = json["user"]["id"].intValue let name = json["user"]["name"].stringValue let email = json["user"]["email"].stringValue let password = json["user"]["password"].stringValue let thumbnail = json["user"]["thumbnail"].stringValue let gender = json["user"]["gender"].intValue let phoneNumber = json["user"]["phoneNumber"].stringValue let identifier = json["user"]["identifier"].stringValue self.testLabel.text = email } }
}
また一般的にapiを使ってアプリを作る際、apiから取得した情報というのはとう管理するものなのでしょうか。(CoreDataなどを使って端末内に保存するのか、それとも都度apiから取得するものなのでしょうか・・・。)
当方エンジニアとしての実務経験が全くなく、低レベルの質問で恐縮ですが、何卒よろしくおねがいいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/08/13 13:28
2016/08/13 13:39 編集