ホームページ > バックエンド開発 > C++ > HTTP ヘッダーを使用してリモート ファイルのサイズを取得できますか?

HTTP ヘッダーを使用してリモート ファイルのサイズを取得できますか?

Linda Hamilton
リリース: 2025-01-03 01:02:41
オリジナル
733 人が閲覧しました

Can I Get a Remote File's Size Using HTTP Headers?

ヘッダーから HTTP ファイル サイズを取得する

クエリ:

ホストされているリモート ファイルのサイズを取得することが望ましいダウンロードを開始する前に、HTTP エンドポイントで。これを実現するために HTTP ヘッダーを利用することは可能ですか?可能であれば、特定のファイルの HTTP ヘッダーにアクセスしてサイズを取得するにはどうすればよいですか?

解決策:

ほとんどの HTTP サーバーは、ファイル全体を転送せずに、サイズを含むファイルのメタデータを取得するメカニズムを提供します。これは HEAD メソッドとして知られています。 C# で HEAD メソッドを使用して HTTP ヘッダーからファイル サイズを取得する方法は次のとおりです。

public long GetFileSize(string url)
{
    long result = -1;

    System.Net.WebRequest req = System.Net.WebRequest.Create(url);
    req.Method = "HEAD";
    using (System.Net.WebResponse resp = req.GetResponse())
    {
        if (long.TryParse(resp.Headers.Get("Content-Length"), out long ContentLength))
        {
            result = ContentLength;
        }
    }

    return result;
}
ログイン後にコピー

注意:

ほとんどのサーバーは HEAD メソッドをサポートしていますが、一部のサーバーは HEAD メソッドをサポートしている可能性があります。それを許可しないか、応答内の「Content-Length」ヘッダーを省略する可能性があります。このような場合、ファイルのサイズを確認するためにファイルをダウンロードする必要がある場合があります。ただし、多くのサーバーは便宜上この情報を提供しています。

以上がHTTP ヘッダーを使用してリモート ファイルのサイズを取得できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート