Изображение веб-файла / заголовок видео

В C# возможно ли определить, является ли веб-адрес файла изображением или видео? Есть ли такое значение заголовка для этого?

У меня есть следующий код, который получает размер файла веб-файла:

System.Net.WebRequest req = System.Net.HttpWebRequest.Create("http://test.png");
req.Method = "HEAD";
using (System.Net.WebResponse resp = req.GetResponse())
{
    int ContentLength;
    if(int.TryParse(resp.Headers.Get("Content-Length"), out ContentLength))
    { 
        //Do something useful with ContentLength here 
    }
}

Можно ли изменить этот код, чтобы увидеть, является ли файл изображением или видео?

заранее спасибо

2 ответа

Решение

То, что вы ищете, это заголовок "Content-Type"

string uri = "http://assets3.parliament.uk/iv/main-large//ImageVault/Images/id_7382/scope_0/ImageVaultHandler.aspx.jpg";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.Method = "HEAD";

using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
    var contentType = response.Headers["Content-Type"];

    Console.WriteLine(contentType);
}

Ты можешь проверить resp.Headers.Get("Content-Type") в заголовке ответа.

Например, это будет image/jpeg для файла jpg.

Смотрите список доступных типов контента.

Другие вопросы по тегам