Hej! verkar inte som någon annan varit med om detta problem... Hej, det kan man ju testa men det konstiga är vad som gör att det tar så lång tid, det måste vara något som gör att anropet hänger sig(inte får köra) iom att när det fungerar så tar det bara någon/några sek medans ibland så står det bara och tuggar tills timeout efter ca 30sek. Kan det vara någon process i windows som hindrar anropet från att köras? kanske haft något program igång som jag inte haft innan när det fungera, kan detta påverka? Ola, HttpWebRequest ger timeout!
Jag har ett program som bland annat ska plocka hem en bild från internet och skapa en katalog på disken och lägga bilden där. Problemet är att jag oftast får ett timeout exeption efter ca 30sek. Katalogen skapas men filen laddas inte hem. Det måste vara anropet myWebClient.DownloadFile(cover,fileName); som kastar ett exeption. Men vissa dagar när den är på humör så fungerar det bra. Tar 2-3 sek så är allt klart. Programmet(en bit av det) ser ut så här:
string titel = Convert.ToString(TextBox1.Text);
string cover = Convert.ToString(TextBox7.Text);
string path = "C:/Inetpub/wwwroot/Ahlmans_Website/database/covers/" + titel;
try {
// Determine whether the directory exists.
if (!Directory.Exists(path))
{
// Try to create the directory.
Directory.CreateDirectory(path);
}
int file = cover.LastIndexOf("/");
string fileName = cover.Substring(file+1);
fileName = "C:/Inetpub/wwwroot/Ahlmans_Website/database/covers/" + titel + "/" + fileName;
WebClient myWebClient = new WebClient();
myWebClient.DownloadFile(cover,fileName);
}
catch (Exception e2) {
Label2.Text="Fel: " + e2.ToString();
}
Felmeddelandet jag får ut i Label2 är:
Fel: System.Net.WebException: Fjärrservern returnerade ett fel: (408) Timeout för begäran. at System.Net.HttpWebRequest.CheckFinalStatus() at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at System.Net.HttpWebRequest.GetResponse() at System.Net.WebClient.DownloadFile(String address, String fileName) at ASP.avi_add_aspx.Button1_Click(Object sender, EventArgs e)
Kan nämna att sidan ligger på en egendriven win2k3 server.Sv: HttpWebRequest ger timeout!
får väl försöka lite till på egen handSv:HttpWebRequest ger timeout!
Såg inte ditt inlägg, En timeout innebär att det tar för lång tida tt göra det du vill göra.
Ev kan du öka timeouten om du använder WebRequest klasserna, WebClinet nyttjar dessa, dock
har den inte lika stort stöd för olika saker. I webReuqest kan du ange en timout.
Mvh JohanSv: HttpWebRequest ger timeout!
Sv:HttpWebRequest ger timeout!
Kan inte direkt svara på vad det är som kag göra så det går segt. Men om du har mycket trafik på linan klan det mycket väl vara så att det blir en timeout.
Jag fick själv problem med detta en gång när skärmslckaren gick igång. Rätt skumt då denna skärmsläckare inte nyttjade nätet, men den tog för mycker resurser för webrequesten. För när jag stängde av skärmsläckaren fungerade allt kanon.
Antingen använder du WebRequest klasserna istället för WebClient och ökar din timeout eller så (onödigt dock) plockar du timeout execption och gör ett test igen, ex fyra till 5 testar och får du inget svar då kan ju användaren få veta att nått inte fick som det skulle. Eller så försöker du tills det går. Gör en evig While loop där du ser till så loopen dör om allt gick bra. (fult dock, men en workarround.)
Mvh Johan