問題タブ [nsurlsessiondatatask]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - NSURLConnection+delegate を NSURLSession+delegate に置き換えますか?
まず第一に、同様の質問がたくさんありますが、それらはすべてNSURLSessionDataTask
完了ハンドラーを作成することに関するものです。私の場合NSURLConnection
、多くのデリゲート メソッドがあり、それを に置き換える必要がありNSURLSession
ます。
このリンクによると、デリゲート メソッドURLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:
が必要ですが、すべての例がデリゲートをまったく使用しない完了ハンドラー (成功または失敗のみ) を使用したタスクの作成に関するものであるため、その使用方法を理解できません。
ios - nsurlsessiontask を使用すると、テーブル ビューのデータが正しく表示されず、変更がスクロールされる
Google Places API を使用して、ユーザーの近くの店舗に関する詳細を取得しています。呼び出しから得た応答をテーブル ビューに表示します。2 つの API 呼び出しを行います。近くの店舗を見つけるための呼び出しと、URL、電話番号、写真など、返された各店舗に関する情報を取得するための別の呼び出し。そのため、最初にこれらの呼び出しを両方ともメイン スレッドで行ったところ、UI が遅くなりました。スクロール中にテーブルビューが大幅に遅れました(ただし、すべてのセルに正しいデータがあり、上下にスクロールしてもデータは変化しませんでした)。次に、nsurlsessiontask を使用して両方の API 呼び出しを実行し、UI の速度が低下しないようにすることにしました。コードは次のとおりです。
最初の API 呼び出し:
基本的に、データを保持する辞書である jsonDict を作成して初期化しました。テーブルビューを表示するクラスで、jsonDict からデータを取得し、セルに表示します。例えば:
店舗の電話番号とウェブサイトを取得するには、別の http リクエストを行う必要があります。そこで、tableView を表示する同じクラスにメソッドを作成します。コードは次のとおりです。
これを行うと、テーブルビューは「遅れ」ませんが、表示されるデータは正しくありません(セルは他のセルのデータを表示します)。データを上下にスクロールするとデータが変更されますか? そのため、メイン スレッドでタスクを実行するとラグが発生しますが、正しいデータが表示されます。nsurlsessiontask を使用するとラグは発生しませんが、表示されるデータは正しくありません。nsurlsessiontask に何か問題がありますか?
ios - アプリがアクティブでない場合、または画面がオフの状態でダウンロードを再開する方法
サーバーから 1 つのファイルをダウンロードしたいのですが、約 30/MB です。
ダウンロードに使用した機能です。アプリがオンのとき、または画面がオフのときNSURLSessionDataTask
にファイルをダウンロードする方法を知りたいです。background state
swift - Swift 2で、http POSTリクエストにパラメーター(Drupal7評価フィールド用)を追加する方法
私は初心者で、映画コンテンツを含むノードの Drupal7 評価フィールドに投票を送信するコードを作成しようとしています。ノードに 'title' のパラメーターがあるように、formats = "75%" の 'rating-percent' のパラメーターがあります。ノードのビューからの json 出力の GET リクエストは、このように (他の多くのフィールドと共に) 評価パーセントを取得します。
データ値 (例: 75%) を「rating-percent」パラメーターにポストするには、このコードに何を追加すればよいですか? POSTでの私の試みは次のとおりです。
何卒よろしくお願い申し上げます。
ios - iOS: 複数の NSURLSession リクエストを行う
複数の http リクエストを作成する必要がありますが、リクエストの応答が次のリクエストに移るのを待つ必要がありますが、その方法がわかりません。dispatch_semaphore を使用せずにこれを行う方法を知っている人はいますか
これは私のコードです:
よろしくお願いします。
ios - 構成を追加するときのSwift 2 nil NSURLSessionDataTask
をプロキシ サーバー リダイレクトsession
として設定すると、が実行されません。が に設定されている場合、期待どおりに実行されます。.init(configuration:..., delegate:self, delegateQueue:NSOperationQueue.mainQueue())
NSURLSessionDataTask.resume()
task
session
.sharedSession()
task
**kCFStreamPropertyHTTPProxyHost
などは廃止されました。たぶん、これは? NSURLSessionConfiguration
の実行を妨げるような影響を与えます。task
swift2 - Swift 2 続行する前にセッションデータタスクに .resume() を実行させるにはどうすればよいですか
セッション dataTaskWithRequest が終了する前に、コードの残りの部分が実行されないようにする方法を見つけようとして夢中になります。私が何をしても、他のすべてが完了するまでデータタスクは .resume() しません。何も機能しません。aa while ループを使用していません。タスクを別のスレッド (dispatch_async) 内に配置しない。私は途方に暮れています。さらに悪いことに、他の誰もこの質問をしていないように見えるので、単純なことを見落としているように感じます。
ios - NSURLSession、データ タスクがダウンロード タスクに変換された後、バックグラウンドでダウンロードできない
次のコードを実行してアプリをバックグラウンドにすると、ダウンロードは続行されます。最後に、ダウンロードが完了すると、正しいコールバックを取得できます。
しかし、私には要件があります。つまり、サーバーが返すものを判断する必要があります。それがjsonの場合、ダウンロードは行わないため、最初に応答ヘッダーを取得し、ダウンロードする必要がある場合は、データタスクをダウンロードタスクに変更したので、次のコードのようにしました
次に、コールバックで応答ヘッダーを取得できます。ファイルをダウンロードする必要がある場合は、次のようにデータ タスクをダウンロード タスクに変更できます。
ここまでは順調ですね。アプリをフォアグラウンドで実行すると、思った通りの効果が得られます。しかし、アプリがバックグラウンドで実行された後、ダウンロードが停止し、アプリを開くと、コンソールに「バックグラウンド転送サービスへの接続が失われました」と表示されます。
Apple はとても賢く、便利なコールバックをたくさん提供してくれると思っていましたが、どこが間違っているのかわかりませんでした。また、AFNetworking と Alamofire に関するソース コードも見ましたが、参照しているものは見つかりませんでした。
それも一般的な要件だと思いますが、インターネット上で役立つ情報を見つけることができません。奇妙すぎます。
だから、あなたが私を助けてくれることを願っています、ありがとう、10億。
ios - NSURLSessionDownloadTask と NSURLSessionDataTask をいつ使用するか?
これら2の違いは何ですか。両方を使用してサーバーからデータを取得できます。