イメージの有効なリクエストに対して実際にレスポンスコード200を受け取るのはいつですか?すべてのデータがブラウザにダウンロードされた後、またはそれまでのデバイスがイメージをリクエストしていますか?私は私のiPadアプリで画像をダウンロードするには、ライブラリhttp://allseeing-i.com/ASIHTTPRequest/を使用して、ファイルオプションに直接ダウンロードを使用して、それが404エラーまたは200ASIHTTPRequestを使用してイメージの要求中に応答コードが受信されるのはいつですか?
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDownloadDestinationPath:@"/Users/ben/Desktop/my_file.jpg"];
以外のステータスコードだった場合、ファイルを削除しています
低速接続中に部分的な応答が保存されているように見えるので、空白の画像や壊れた画像で終了します。要求が完了した後、私はちょうど応答コードのみが戻ってくることを確認する
NSURL *url = [NSURL URLWithString: [[NSString stringWithFormat:kProductImagesURL, fileName] stringByAppendingString:tStamp]];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setTimeOutSeconds:10];
[request startSynchronous];
int statusCode = [request responseStatusCode];
if (statusCode==200) {
NSData *responseData = [request responseData];
[responseData writeToFile:[savePath stringByReplacingOccurrencesOfString:@"%20" withString:@" "] atomically:YES];
}
:
は、私は200のステータスコードを受け取った後にのみ、ディスクへのデータ・ストリームを保存する代わりに決めましたすべてのデータがダウンロードされました。私は99%確信していますが、このような画像バグを持つ別のアプリリリースを買う余裕はありません。
画像のダウンロードを示す素晴らしい進捗バーがあり、私はこの時点で非同期に切り替える必要はありません。ユーザーのやりとりは不要です。ステータスコードが来たときには本当に興味があります画像データが発生している場合には、ストリーミング前、ストリーミング中、ストリーミング後にバック・スルーする。 – Slee