HTTP 响应错误 503

Httpresponse Error 503

我正在尝试从 CloudFlare 托管的网站下载网页数据。它使用 HTTPS 并在进入页面之前获取连接 ID。

我试图在 WebRequest 和 WebResponse 中获取 ID,但出现以下错误:

An unhandled exception of type 'System.Net.WebException' occurred in System.dll Additional information: The remote server returned an error: (503) Server Unavailable.

我尝试从 Fiddler 发出请求,这是响应:

HTTP/1.1 503 Service Temporarily Unavailable
Date: Tue, 12 May 2015 13:38:17 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
Set-Cookie: __cfduid=d57a7d982035dad7ebafe63444d125e451431437897; expires=Wed, 11-May-16 13:38:17 GMT; path=/; domain=.hornystress.me; HttpOnly
X-Frame-Options: SAMEORIGIN
Refresh: 8;URL=/cdn-cgi/l/chk_jschl?pass=1431437901.815-Ym1g5qTodK
Cache-Control: no-cache
Server: cloudflare-nginx
CF-RAY: 1e5685ed559606ee-LHR

这是我的代码:

public static string GetCookie(string link)
{
    WebRequest request = WebRequest.Create("https://hornystress.me");
    request.Proxy = WebProxy.GetDefaultProxy();
    request.Timeout *= 100;
    WebResponse response = request.GetResponse();
    return response.Headers.Get("Set-Cookie");
}

无论您在做什么,都可能看起来像是对网站的攻击,并且它正在触发安全功能。您可能希望网站所有者将发出呼叫的 IP 列入白名单。

这是 Cloudflare 安全性,旨在阻止您正在尝试做的事情。您将无法使用脚本访问该站点。

问题是网站的正常响应是 Error code 503 我想要的 cookie...所以编译器会抛出 WebException 错误;我应该抓住...

    public static string GetCookie()
    {
        WebRequest request = WebRequest.Create("https://hornystress.me");
        request.Proxy = WebProxy.GetDefaultProxy();
        request.Timeout *= 100;
        string cookie;
         WebResponse response;
        try
        {
          response  = request.GetResponse();
          cookie = response.Headers.Get("Set-Cookie");
        }
        catch (WebException we)
        {
           cookie=we.Response.Headers.Get("Set-Cookie");
        }
        return cookie;
    }