HttpWebResponse.Les Cookies vide malgré-Tête Set-Cookie (pas de redirection)

J'ai du mal à comprendre quel est le problème ici. Je suis l'envoi des informations de connexion, je peux voir la Set-Cookie dans l'en-Tête avec la valeur correcte, mais la collection de Cookies n'est pas exécuté.

C'est HTTPS, la connexion automatique des redirections, mais j'ai désactivé avec AllowAutoRedirect=false pour essayer de résoudre ce problème.

Dans cette capture d'écran, vous pouvez facilement voir les informations de débogage et que le cookie doit être configuré. Je suis en train de ma httpWebRequest.Cookie pour une nouvelle CookieCollection.

HttpWebResponse.Les Cookies vide malgré-Tête Set-Cookie (pas de redirection)

HttpWebRequest httpRequest;
CookieContainer reqCookies = new CookieContainer();
string url = "https://example.com";
string[] email = user.Split('@');
email[0] = System.Web.HttpUtility.UrlEncode(email[0]);
user = email[0] + "@" + email[1];
pass = System.Web.HttpUtility.UrlEncode(pass);

string postData = "email=" + user + "&password=" + pass;
byte[] byteData = Encoding.UTF8.GetBytes(postData);

httpRequest = (HttpWebRequest)WebRequest.Create(url);
httpRequest.Method = "POST";
httpRequest.Referer = url;
httpRequest.CookieContainer = reqCookies;
httpRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1003.1 Safari/535.19";
httpRequest.Accept = "text/html, application/xhtml+xml, */*";
httpRequest.ContentType = "application/x-www-form-urlencoded";
httpRequest.ContentLength = byteData.Length;
using (Stream postStream = httpRequest.GetRequestStream())
{
    postStream.Write(byteData, 0, byteData.Length);
    postStream.Close();
}

httpRequest.AllowAutoRedirect = false;
HttpWebResponse b = (HttpWebResponse)httpRequest.GetResponse();

Essayé exactement le même code de connexion à http://www.yahoo.com et les cookies sont mis dans ma collection... Argh...

Voici la Set-Cookie valeur d'en-Tête:

s=541E2101-B768-45C8-B814-34A00525E50F; Domain=example.com; Path=/;
Version=1

  • Vous assurer que vous avez la bonne nom de domaine du serveur? est-il domain.com ou .domain.com , ils sont tous les deux différents. Vous pouvez poster votre ASP.NET votre code?
InformationsquelleAutor Brad | 2013-02-27