0

Cookie が表示されないという傾向があります。私はフィドラーを正確にコピーしますが、とにかく自動的に処理されるため、簡単な作業になるはずです。適切な Cookie を取得できないのはなぜですか?

public class HTTP : WebClient
{
    public HTTP()
        : this(new CookieContainer())
    { }

    public HTTP(CookieContainer c)
    {
        CookieContainer = c;
    }
    public CookieContainer CookieContainer { get; set; }

    protected override WebRequest GetWebRequest(Uri address)
    {
        WebRequest request = base.GetWebRequest(address);

        var castRequest = request as HttpWebRequest;
        if (castRequest != null)
        {
            castRequest.CookieContainer = CookieContainer;
            castRequest.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
            castRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22";

        }

        return request;
    }
} 


public void checkUrl()
{
CookieContainer cookieJar = new CookieContainer();
HTTP client = new HTTP(cookieJar);

string responseData = client.DownloadString(url);
       responseData = client.UploadString(url, loginData);
rtb.Text = responseData;
}
4

1 に答える 1

0

おそらく、WebResponse にフックして、そこから Cookie を読み取りたいと思うでしょう。リクエストは送信後に変更されません。

于 2013-03-26T21:24:06.183 に答える