0

我想写一个小应用程序,基本上将数字加一。

从 0 开始,我需要上升到大约 8000 并检查 http 响应。有人可以指导我如何做到这一点吗?

我目前有以下代码检查我的图像是否返回 200,但是我需要将 id 增加 1,然后重新开始。所以1.jpg、2.jpg、3.jpg、4.jpg、5.jpg,最多8000.jpg。

在我这样做之前,我将在数据库中进行检查,看看我需要检查多少项目。(目前为 8000)。

protected void Page_Load(object sender, EventArgs e)
{
    string urlToCheck = "http://localhost/8000.jpg";
    int statusCode = Convert.ToInt32(HttpStatus(urlToCheck));

    Response.Write(statusCode);
}

private static HttpStatusCode HttpStatus(string url)
{
        HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);

        try
        {
            using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
            {
                return response.StatusCode;
            }
        }
        catch (System.Net.WebException)
        {
            return HttpStatusCode.NotFound;
        }
    }
4

3 回答 3

4

我不确定你对输出做了什么,但这里是你如何生成文件名序列的方法。

for (int i = 1; i < 8000; i++) {
    string urlToCheck = string.Format("http://localhost/{0}.jpg", i);
    int statusCode = Convert.ToInt32(HttpStatus(urlToCheck));
}
于 2013-09-16T20:40:48.153 回答
1

我不确定我是否完全理解,但是如果您需要生成一堆具有不同 .jpg 的 URL,那么可以这样做:

var urls = Enumerable.Range(0, 801).Select(id => string.Format("http://localhost/{0}.jpg", id)).ToArray();
于 2013-09-16T20:46:58.830 回答
0
for (int i = 1; i < 8000; i++) 
{
    string urlToCheck = "http://localhost/" + i + ".jpg";
    int statusCode = Convert.ToInt32(HttpStatus(urlToCheck));
}
于 2013-09-17T03:11:46.190 回答