iOS / iPhoneからRESTFulサービスにアクセスするにはどうすればよいですか?
SwiftでRESTAPIにアクセスするには、Swiftでのネットワークのネイティブな方法、つまりURLセッションとデータタスクを使用する一連の手順を実行する必要があります。
RestはRepresentationalStateTransferの略で、Webサービスで使用される一連の制約を定義します。迅速に、次の方法でWebサービスにアクセスできます。
-
まず、デフォルト構成のセッションオブジェクトを作成する必要があります。
let configuration = URLSessionConfiguration.default let session = URLSession(configuration: configuration)
-
次に、必要なタイプのURLリクエストを作成する必要があります。これにより、取得、投稿、削除、または配置できます。この例では、「GET」タイプが表示されています。
let url = URL(string: URLString) //let url = NSURL(string: urlString as String) var request : URLRequest = URLRequest(url: url!) request.httpMethod = "GET" request.addValue("application/json", forHTTPHeaderField: "Content-Type") request.addValue("application/json", forHTTPHeaderField: "Accept")
-
リクエストオブジェクトを作成したら、上記で作成したURLを使用してdataTaskを実行する必要があります。これが、完全なdataTaskメソッドが現在どのように見えるかです。
let dataTask = session.dataTask(with: url!) { data,response,error in guard let httpResponse = response as? HTTPURLResponse, let receivedData = data else { print("error: not a valid http response") return } switch (httpResponse.statusCode) { case 200: //success response. break case 400: break default: break } } dataTask.resume()
-
これで、これを関数に埋め込んで、コードで使用できるようになりました。
func hitAPI(_for URLString:String) { let configuration = URLSessionConfiguration.default let session = URLSession(configuration: configuration) let url = URL(string: URLString) //let url = NSURL(string: urlString as String) var request : URLRequest = URLRequest(url: url!) request.httpMethod = "GET" request.addValue("application/json", forHTTPHeaderField: "Content-Type") request.addValue("application/json", forHTTPHeaderField: "Accept") let dataTask = session.dataTask(with: url!) { data,response,error in // 1: Check HTTP Response for successful GET request guard let httpResponse = response as? HTTPURLResponse, let receivedData = data else { print("error: not a valid http response") return } switch (httpResponse.statusCode) { case 200: //success response. break case 400: break default: break } } dataTask.resume() }
注 −一部のAPIにアクセスするには、info.plistファイルでトランスポートセキュリティの例外を許可する必要がある場合があります。
一部のデータを取得するにはAPIが必要であるため、この例では出力は示されていません。
-
iOS 15 から iOS 14 にダウングレードする方法
最新のアップグレードと更新を試すには、ベータ版が適しています。ただし、すべてが日常の使用で問題なく機能するわけではありません。興奮して iOS 15 にアップグレードしたのに、その決定を後悔している場合。 iOSの安定版であるiOS 14.6に戻す方法は次のとおりです。 iOS 14.6 にダウングレードする最も簡単な方法は、iOS 15 ベータ プロファイルを削除し、次のアップデートを待つことです。その方法は次のとおりです。 iPhone の [設定] に移動し、[一般] をタップします。 [プロファイルとデバイス管理] をタップします。 プロファイルの削除を選択し、iPhone
-
iOS 12 のインストール方法
Apple は、待望の iOS 12 のリリース日、つまり 9 月 17 日を発表しました。 .しかし、それまで待ちたくない場合は、iOS 12 のゴールデン マスター バージョンを今すぐインストールできます。そのためには、Apple ベータ ソフトウェア プログラムに参加して、デバイスを登録する必要があります。 この iOS 12 の最終バージョンは、今から 1 週間以内に一般公開され、スクリーンタイム、ミー文字、Siri ショートカット、改善された通知などへのアクセスが許可されます。 注:iOS 12 は、古いものでも新しいものでも、iPhone の応答性とパフォーマンスを向上させるは