1

私のアプリは次のように動作します。

Client : ( を使用してNSURLConnection) サーバーに要求を送信し、サーバーにファイルを生成してそのファイルをダウンロードするように依頼します。

サーバー: ファイルを生成し、ファイルのデータをクライアントに送り返します (チャンク エンコーディングを使用)。

ファイルを生成した後、サーバーはファイルのヘッダーを更新するため、ファイルをダウンロードした後、クライアントは更新されたヘッダーを取得するために 2 番目の要求を行う必要があります。ファイルの生成および更新中に、クライアントからの接続が閉じられていることをサーバーが検出すると、生成されたファイルが削除されるため、接続を維持する必要があります。

ClientNSURLConnection :更新されたヘッダーを取得するために2 番目の要求 (別の) を送信しました

問題は、最初のリクエスト(私は使用NSURLConnection)サーバーが接続が閉じられたことを検出し、生成されたファイルを削除した後、2番目のリクエストが失敗することです。

その理由は、 の 2 つの異なるインスタンスを使用しているためと思われるためNSURLConnection、ドキュメントで のようなものを調べますNSMutableURLConnection。存在しません!

私の質問: リクエストとリクエストの間に接続を維持する方法はありますか ( を再利用するか、同じものNSURLConnectionを使用して再リクエストすることにより)NSMutableRequestNSURLConnection

4

1 に答える 1

-1

使用できます:

NSURLConnection *currentConnection = [NSURLConnection alloc]; 
[currentConnection initWithRequest:request1 delegate:self];

[currentConnection initWithRequest:request2 delegate:self];

以下を使用して、元の NSURLRequest と現在の NSURLRequest を確認できます。

- (NSURLRequest *)originalRequest NS_AVAILABLE_IOS(5_0);
- (NSURLRequest *)currentRequest  NS_AVAILABLE_IOS(5_0);
于 2013-01-25T21:06:21.010 に答える