Почему мой HttpWebRequest перенаправляет на страницу входа? - PullRequest
1 голос
/ 08 сентября 2011

У меня есть запрос HttpWebRequest для получения идентификатора сеанса. Затем я получаю cookie из ответа, добавляю его во второй запрос, чтобы получить нужную мне страницу.

Используя IIS / 7.5, каковы возможные сценарии этого сбоя? Я использую Fiddler и получаю статус 302. Я получаю идентификатор сессии ASPNET.

   CookieContainer myCookies = new CookieContainer();
    HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("https://www.secure.com/login.aspx");
    req.Method = "POST";
    req.Credentials = fileretrieve.Credentials;//Network credentials. 
    req.CookieContainer = myCookies;
    req.AllowAutoRedirect = true;

    byte[] bytes = System.Text.Encoding.ASCII.GetBytes(req.Credentials.ToString());
    req.ContentLength = bytes.Length;
    System.IO.Stream os = req.GetRequestStream();
    os.Write(bytes, 0, bytes.Length);
    os.Close();

    HttpWebResponse resp = (HttpWebResponse)req.GetResponse();

    HttpWebRequest xmlreq = (HttpWebRequest)HttpWebRequest.Create("https://www.secure.com/file");
    xmlreq.Method = "GET";
    xmlreq.KeepAlive = true;
    xmlreq.AllowAutoRedirect = true;
    xmlreq.CookieContainer = req.CookieContainer;


    HttpWebResponse xmlresp = (HttpWebResponse)xmlreq.GetResponse();

     string webpage;

    System.IO.StreamReader sr = new System.IO.StreamReader(xmlresp.GetResponseStream());
    webpage = sr.ReadToEnd();                    

1 Ответ

0 голосов
/ 08 сентября 2011

Я думаю, что это сбой, потому что вы пытаетесь использовать свойство .Credentials для аутентификации в приложении на основе FormsAuthentication.Свойство Credentials будет работать для обычной проверки подлинности или проверки подлинности NTLM, но не для проверки подлинности с помощью форм, в этом случае вам просто нужно поместить ожидаемые поля на страницу Login.aspx, чтобы вернуть cookie Auth.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...