Sto lottando per capire cosa c'è che non va. Sto inviando informazioni di accesso, posso vedere il Set-Cookie nell'intestazione con il valore corretto, ma la raccolta dei cookie non viene riempita.HttpWebResponse.Cookies vuoti nonostante Set-Cookie Header (senza reindirizzamento)
Questo è HTTPS, il reindirizzamento automatico di accesso, ma l'ho disabilitato con AllowAutoRedirect = false per provare a risolvere questo problema.
In questa schermata è possibile visualizzare facilmente le informazioni di debug e impostare il cookie. Sto impostando il mio httpWebRequest.Cookie su un nuovo CookieCollection.
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();
provato il codice esattamente lo stesso collegamento a http://www.yahoo.com ei biscotti sono messi nella mia collezione ... Argh ...
Ecco il valore di Set-Cookie Header:
s = 541E2101-B768-45C8-B814-34A00525E50F; Dominio = example.com; Path = /; versione = 1
Sei sicuro di avere impostato il nome di dominio corretto dal server? è domain.com o .domain.com, entrambi sono diversi. Puoi pubblicare il tuo codice ASP.NET? –