3

私は NSURLConnection を使用してファイルをダウンロードしています。 (基本的にはJGDownload Acceleratorを使用しています)

私の問題は、ある特定のサーバーでファイルをダウンロードしようとすると、サーバーによって提供される応答が異なり、以下のような異なるヘッダー応答が返されることです

Printing description of headers:
{
    "Accept-Ranges" = bytes;
    "Cache-Control" = "max-age=687749";
    Connection = "keep-alive";
    "Content-Length" = 35617808;
    "Content-Type" = "video/mp4";
    Date = "Fri, 11 Sep 2015 07:21:59 GMT";
    Etag = "\"ee90ce32a16fc115d0799d686e5fe1b4\"";
    Expires = "Sat, 19 Sep 2015 06:24:28 GMT";
    "Keep-Alive" = "timeout=20";
    "Last-Modified" = "Wed, 09 Sep 2015 13:41:37 GMT";
    Server = ucdn;
    "X-Timestamp" = "1441806096.99264";
    "X-Ureq-ID" = "PYMqMNZBGw7LI3xeAHCTQwJs2FvO0y0xuG3+g5B0KcBzTv1v4kTfwCzHQYgrBEGSJQ0tBMG5L+srffrjBfio1R1ChR+wABEHY92PCg==";
    "X-VHostId" = "10000, 200000";
}

{
    "Cache-Control" = "max-age=687430";
    Connection = "keep-alive";
    "Content-Length" = 1;
    "Content-Range" = "bytes 0-0/35617808";
    "Content-Type" = "video/mp4";
    Date = "Fri, 11 Sep 2015 07:27:18 GMT";
    Etag = "\"ee90ce32a16fc115d0799d686e5fe1b4\"";
    Expires = "Sat, 19 Sep 2015 06:24:28 GMT";
    "Keep-Alive" = "timeout=20";
    "Last-Modified" = "Wed, 09 Sep 2015 13:41:37 GMT";
    Server = ucdn;
    "X-Timestamp" = "1441806096.99264";
    "X-Ureq-ID" = "PYMqMNZBGw7LI3xeAHCTQwJs2FvO0y0xuG3+g5B0KcBzTv1v4kTfwCzHQYgrBEGSJQ0tBMG5L+srffrjBfio1R1ChR+wABEHY92PCg==";
    "X-VHostId" = "10000, 710000";
}

content-length最初のものは適切な値を提供し、2番目のものは間違っていて、約30〜40秒の遅延が発生したため、基本的な敬意が重要です。

その遅延を回避する方法はありますか?または、応答を速くするための回避策は、サーバーが1〜2秒でデータを提供することを意味しますが、コールバックメソッドはデータを遅く提供します

要求/応答時間については、Charlesアプリケーションを使用します。それによって私が見つけた結果はこちらです

4

2 に答える 2

0

時間遅延を減らすために考えられるすべての方法を試しましたが、 を使用する方法はないようですNSURLConnection。そのため、この問題について Apple Engineer Support にリクエストしており、しばらくしてから回答が得られる予定です。

それまでは、サーバーからの誤ったヘッダー情報によるこの遅延を回避する方法は他にありません。

Apple からの応答があれば、ここで更新します。

于 2015-09-24T06:35:14.800 に答える
0

Web サービス自体の問題のようです。

サービスが別のサービスからデータ自体を取得し、それらを渡す可能性があります。他のサービスが定義済みの時間内にクライアントからの繰り返し接続を受け入れない場合 (Retry-After ヘッダー) が生成されます。

于 2015-09-16T10:42:04.227 に答える