J'essaye d'écrire une fonction qui enregistre une page Web (avec ses images) comme une page html. J'utilise HttpWebRequest pour demander le contenu de pages Web. Ma fonction ressembleWebRequest multiple dans la même session
void SaveUrl(string sourceURL, string savepath)
{
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(sourceURL);
HttpWebResponse response = (HttpWebResponse)webRequest.GetResponse();
StreamReader responseReader = new StreamReader(response.GetResponseStream());
string sResponseHTML = responseReader.ReadToEnd();
using (StreamWriter sw = new StreamWriter(savepath, false))
{
sw.Write(sResponseHTML);
}
string[] ImageUrl = GetImgLinks(sResponseHTML);
foreach (string imagelink in ImageUrl)
{
HttpWebRequest imgRequest = (HttpWebRequest)WebRequest.Create(imagelink);
HttpWebResponse imgresponse = (HttpWebResponse)imgRequest.GetResponse();
//Code to save image
}
}
Mon problème ici est que je veux faire toute la WebRequest en même session et ne veulent pas créer une nouvelle session avec chaque imgRequest, autant des images sur ma page Web sont générées dynamiquement et sont stockés temporairement. donc ces images ne peuvent être récupérées que si je fais une demande dans la même session.