iOSアプリケーションでは、NSURLSessionConfiguration、NSURLSession、NSURLSessionDownloadTaskなどを使用して、サーバーがデータベースからその場で生成するxmlファイルをダウンロードします。 1つの特定のアカウントから大きなファイルをダウンロードしようとするまで、ダウンロードはすべてうまく動作します。私たちのサーバーは、このアカウントのxmlを配信する前に、多くの作業を行う必要があります。言い換えれば、サーバーが要求されたxmlを実際に吐き出す前に多少待たなければなりません。この最大のアカウントでは、サーバーがデータを正常に処理してクライアントに送信することを報告しても、iOSクライアントはデータを受信しません。NSURLSessionDownloadTaskのダウンロードがクライアントに届かないのはなぜですか?
テストしながら、私たちは、独特の何かに気づい:
- を私たちは、私たちは、デスクトップ
- にChromeを使用してXMLをダウンロードすることができます私たちのiOSアプリでコマンドライン
- にカールを使用してXMLをダウンロードすることができ、それは、デバイスまたはシミュレータでXMLのダウンロードに失敗した
私はtimeoutIntervalForRequestとtimeoutIntervalForResourceの両方を起動しました。それは「タイムアウト」ではありません。しかし、Appleのネットワーキングスタックでは、XMLがサーバーによって生成されるのを長い間待つことが許されていないようだ。そして、なぜChromeとカールが問題ないのですが、SafariとiOSコードは何をしていますか?だから、私はここで何が起こっているのかというと少し迷っている。
これは従来のサーバーコードであり、今後はJSONやより高速なクラスに変更されるため、「サーバーコードを変更する」必要はありません。
私のためのアイデアですか?前もって感謝します。
私はまた、AFNetworkingとカールを試みました、彼らはすべてプロジェクトで失敗します。しかし、私はターミナルで同じカールを実行することができ、それは動作します。 – Erick