Je veux définir une valeur de cookie pour une requête POST http, ca peut être fait dans Silverlight?Comment définir un cookie pour une requête web dans Silverlight
Si oui, quelle classe devrais-je utiliser HttpWebRequest, WebCLient ou autre chose?
Je veux définir une valeur de cookie pour une requête POST http, ca peut être fait dans Silverlight?Comment définir un cookie pour une requête web dans Silverlight
Si oui, quelle classe devrais-je utiliser HttpWebRequest, WebCLient ou autre chose?
Je pense que vous pouvez définir les en-têtes avec le HttpWebRequest
, il est donc facile de définir l'en-tête Cookie
avec la valeur correcte, vous pouvez trouver un peu d'aide here.
Pour définir le cookie:
HtmlPage.Document.SetProperty("cookie", value);
où la valeur est quelque chose comme "MyKey = abcdef;". Pour le lire (clé dans ce cas est "MyKey":
string[] cookies = HtmlPage.Document.Cookies.Split(';');
foreach (string cookie in cookies)
{
string[] keyValuePair = cookie.Split('=');
if (keyValuePair.Length == 2 && key == keyValuePair[0].Trim())
return keyValuePair[1].Trim();
}
Pour supprimer:
string oldCookie = HtmlPage.Document.GetProperty("cookie") as String;
DateTime expiration = DateTime.UtcNow - TimeSpan.FromDays(1);
string cookie = String.Format("{0}=;expires={1}", key, expiration.ToString("R"));
HtmlPage.Document.SetProperty("cookie", cookie);