如何在C#/ ASP.NET中的http://someurl/myimage.jpg中检查图像是否存在

Mat*_*att 3 c# asp.net url http

如何检查图像是否存在于C#/ ASP.NET 中的http://someurl/myimage.jpg似乎应该有一种方法来检查这个 - 但我找不到一个.

我找到了这个,但它并没有真正回答这个问题.

Dav*_*vid 12

这段代码应该有效:

private static bool UrlExists(string url)
{
    try
    {
        new System.Net.WebClient().DownloadData(url);
        return true;
    }
    catch (System.Net.WebException e)
    {
        if (((System.Net.HttpWebResponse)e.Response).StatusCode == System.Net.HttpStatusCode.NotFound)
            return false;
        else
            throw;
    }
}
Run Code Online (Sandbox Code Playgroud)


Ray*_*Ray 11

您可以尝试使用System.Net.WebRequest向该URL发送"HEAD"请求并检查响应以查看该文件是否存在 - 这应该可以完成工作,而无需尝试下载它.

  • 如果目标只是检查是否存在,那么这比System.Net.WebClient.DownloadFile更好.如果目标是检查是否存在然后下载,则稍微更糟糕,因为它将导致两个单独的HTTP请求. (2认同)