Снимок экрана C #, обрабатывающий контроль входа с помощью POST - PullRequest
0 голосов
/ 08 ноября 2010

Я пытаюсь зайти на сайт, используя скриншот экрана, и у меня возникают трудности.

 private static string GetWebRequestContent(Uri uri)
    {
        string sid = String.Empty;

        string userName = "username";
        string password = "password";
        string postData = string.Format("FormName=Login&Login={0}&Password={1}&FormAction=login&ret_page=%2FDefault.asp&querystring=",userName,password);
        byte[] postBytes = Encoding.UTF8.GetBytes(postData);


        HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(uri);
        req.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; WOW64; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.30729; .NET CLR 3.5.30729; InfoPath.2; .NET4.0C; .NET4.0E; MS-RTC LM 8)";
        req.KeepAlive = false;
        req.Proxy = new WebProxy(IPAddress,PORT);
        req.Method = "POST";
        req.Host = host;
        req.Referer = referer;
        req.ContentType = "application/x-www-form-urlencoded";
        req.ContentLength = postBytes.Length;

        StreamWriter requestwriter = new StreamWriter(req.GetRequestStream(), System.Text.Encoding.ASCII);
        requestwriter.Write(postData);
        requestwriter.Close();

        try
        {
            using (HttpWebResponse res = (HttpWebResponse)req.GetResponse())
            {
                using (StreamReader sr = new StreamReader(res.GetResponseStream()))
                {
                    sid = sr.ReadToEnd().Trim();
                }
            }
        }
        catch (WebException e)
        {
            Console.WriteLine(uri.ToString());
            Console.WriteLine(e.Message);
        }

        return sid;
    }

Все, что я получаю, это форма входа в систему, она никогда не регистрирует меня. Любые идеи?

1 Ответ

0 голосов
/ 12 апреля 2011

Попробуйте проверить, какой запрос отправлен в вашем браузере, а затем скопируйте его в свой скрипт.В этом вам помогут различные расширения Firefox, такие как TamperData , Firebug и LiveHttp .

...