CFHTTPStream のファイル サイズを取得する方法。「 http://testserver.com/test.jpg 」というファイルが読み取れるとします。ここでは、ファイル サイズ「test.jpg」を取得する必要があります。これは、CFReadStreamRead の使用中に進行状況を表示する必要があります。
つまり
、読み取りプロセスの開始前にサーバーで利用可能なバイト数が必要です。
前もって感謝します
モーシン
CFHTTPStream のファイル サイズを取得する方法。「 http://testserver.com/test.jpg 」というファイルが読み取れるとします。ここでは、ファイル サイズ「test.jpg」を取得する必要があります。これは、CFReadStreamRead の使用中に進行状況を表示する必要があります。
つまり
、読み取りプロセスの開始前にサーバーで利用可能なバイト数が必要です。
前もって感謝します
モーシン
したがって、ストリームからメッセージ ヘッダーを取得します。
CFHTTPMessageRef message = CFReadStreamCopyProperty(requestStream, kCFStreamPropertyHTTPResponseHeader);
そして、ヘッダー フィールドをコピーします。
CFDictionaryRef headerFields = CFHTTPMessageCopyAllHeaderFields(message);
次に、辞書から content-length フィールドを取得します。
特定のフィールド名を完全には覚えていないので、辞書をダンプして、正しいものを取得します。ヘッダーを取得するには、ストリームの少なくとも一部を読み取る必要があります。