CocoaPods で AFNetworking をインストール
Podfile に
pod "AFNetworking"
を追加して pod install
実行。
Bridging-Header で AFNetworking のヘッダーをインポート
<プロジェクト名>-Bridging-Header.h に
#import <AFNetworking/AFNetworking.h> #import <AFNetworking/UIImageView+AFNetworking.h>
を追加。
画像の非同期ダウンロード機能も使いたいので、 AFNetworking.h だけでなく UIImageView+AFNetworking.h もインポートしている。
AFHTTPRequestOperationManger を使ってみる
func loadRepositories() { let manager = self.createManager() manager.GET( "user/repositories/", parameters: nil, success: { (operation, json) -> Void in let array = json as NSArray // 配列を使ってなにかやる }, failure: { (operation, error) -> Void in // エラー処理 } ) return nil } private func createManager() -> AFHTTPRequestOperationManager { let manager = AFHTTPRequestOperationManager(baseURL: self.baseUrl) manager.requestSerializer = AFHTTPRequestSerializer() // ユーザー名とパスワードを設定 manager.requestSerializer.setAuthorizationHeaderFieldWithUsername( self.username!, password: self.password!) return manager }
画像を非同期にダウンロードして表示してみる
UIImageView+AFNetworking.h をインポートすると、 AFNetworking が提供する画像の非同期ダウンロードが使える。
cell.imageView.setImageWithURL( NSURL(string: imageUrl), placeholderImage: userMenuImage )