以前はASIHTTPRequest
を使用していましたが、現在はNSURLRequest
があります。今すぐNSURLRequest
を使用する必要がありますか?欠点はありますか?
これを今読んでいる人のために:回答で述べたように、私はAFNetworking
を使用することになりました
https://github.com/AFNetworking/AFNetworking
おかげで、
NSURLConnection
およびNSURLRequest
は、接続を管理するために提供されているCocoaクラスです。 iOS 7では、Appleが追加されましたNSURLSession
。
しかし、あなたは AFNetworking
がネットワーク要求(特に複雑なHTTP要求)をさらに簡素化するフレームワークであることがわかると思います。何らかの理由でサードパーティのフレームワークを使用したくない場合は、NSURLConnection
またはNSURLSession
を直接使用できます。もう少しコーディングが必要です。
良いASIHTTPRequest
代替案を探している場合は、AFNetworking
が最適です。
NSURLConnection
およびNSURLSession
の詳細については、 RL Loading Systemプログラミングガイド を参照してください。
NSURLRequest
はiOS2.0から存在しているため( doc を参照)、正確には新しいものではありません。 ASIHTTPRequest
は廃止されました 最終更新 は2011年5月15日でしたので、使用しないでください。 AFNetworkingはiOSおよびMac OS X向けの楽しいネットワーキングライブラリです。 [-]で説明されています self を使用すると、ライブが簡単になります。私の場合、必要なネットワークに最初に含めるフレームワークです。プロジェクト。
どちらを使用する必要がありますか?これは要件に依存すると思います。NSURLRequest
とNSURLConnection
を使用すると、すべてを実行できます。実際、AFNetworking NSURLConnectionの上に構築されています。しかし、私が以前あなたに言った方法で、AFNetworkingは私の賛成票を持っています。
iOS 7の投稿を編集
IOS7をターゲットにしている場合は、NSURLSessionを調べて、 official documentation を確認してください。これは tutorial です。
Swiftの編集
Swiftで行われた実装について Alamofire プロジェクトをご覧ください。このプロジェクトは、mattt(AFNetworkingの主な作者)によっても作成されています。
Asihttprequestは、現在開発をサポートしていない古いライブラリです。使用しないでください。
nSURLRequestは、使用するデフォルトのiOS(cocoa)クラスです。接続応答を処理するためにたくさんのコードを書く必要があるので、非常に少ない使用法にそれをお勧めします。その上にすべてのhttpライブラリを構築します。
AFNetwokingは現在、http、imhoの標準です。コールバックにブロックを使用し、さまざまなタイプのデータjson、xmlなどをサポートしています。よく設計されており、簡単にサブクラス化できます。最高です。
ネイティブ(NSURLSession)とAFNetworkingまたはその他のライブラリ
NSURLSessionを使用することをお勧めします。これは、アプリの終了時に多くのカスタマイズができるためです。最近プロジェクトに取り組んでいましたが、アプリのどこかmultipart form dataを使用する必要があります。リクエスト本文をバックエンドの人に提供する必要があります。私はAfNetworkingロガーを使用して自分の体を印刷しましたが、役に立ちませんでした。だから私はココアネイティブライブラリに移動し、私の解決策を得ました。
したがって、iOSネイティブネットワーキングを使用することをお勧めします。これにより、多くのカスタマイズが可能になりますが、必要なコードが少ない場合は、サードパーティのライブラリを使用できます。