Comment ajouter des cookies pour WebRequest?

Je suis en train de test de l'unité un peu de code, et j'ai besoin de remplacer ceci:

  HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create( uri );
  httpWebRequest.CookieContainer = new CookieContainer();

avec

  WebRequest webRequest = WebRequest.Create( uri );
  webRequest.CookieContainer = new CookieContainer(); 

Fondamentalement, comment puis-je obtenir des cookies dans la demande sans l'aide d'un HttpWebRequest?

  • Ce serait difficile, car les cookies sont un HTTP concept. Est-il une raison pour laquelle vous avez besoin de faire ce changement?
  • WebRequest permettra de créer un HttpWebRequest en fonction de l'uri. Donc, si je veux, à se moquer de ma propre objet WebRequest et/ou enregistrer mon propre uri qui renvoie également un WebRequest, alors je ne veux pas contraindre la méthode pour travailler uniquement avec un objet HttpWebRequest.
  • Je comprends que le type à l'exécution de webRequest sera HttpWebRequest. Mais l'accès CookieContainer exige que le type de compilation être HttpWebRequest. Aussi, vous mentionnez pas contraignant-vous à HTTP, mais dans ce cas, les cookies ne signifie pas grand-chose, puisqu'ils sont un HTTP construire (ce qui est la raison de leur absence sur WebRequest en premier lieu.)
  • dlev - c'est pourquoi je suis à la recherche d'un moyen d'ajouter des cookies. Imaginez si je l'ai dit si ... alors addcookies ^^
  • Regardez cette page. stackoverflow.com/questions/18667931/... il a été très utile pour moi
InformationsquelleAutor O.O | 2012-06-22