Guten Abend, besteht die möglichkeit ein Download zu begrenzen.
Beispiel:
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(url);
myHttpWebRequest.UserAgent = "Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)";
HttpWebResponse webRequest = (HttpWebResponse)myHttpWebRequest.GetResponse();
Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
sr = new StreamReader(webRequest.GetResponseStream(), encode);
if (!htmlbereinigung)
{
result = sr.ReadToEnd();
}
else
{
result = StripHTML(sr.ReadToEnd()).Trim();
}
webRequest.Close();
sr.Close();
Das ganze soll aber nicht mehr als 10 KB schnell sein, wie kann ich sowas realisieren?
und wie kann ich das messen?
Mit .NET Mitteln so direkt gar nicht.
Die Limitierung erfolgt über TCP; Du müsstest also tiefer gehen, die TCP Kommunikation selbst schreiben und dort ein Limiter einsetzen.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Da Du den StreamReader benutzt, kannst Du die Read Methode in einer Schleife nehmen und dann x Bytes lesen und einen Sleep von 1000 einfügen. Du musst dann nach der Schleife nur die gelesen Einzelteile in verschiedenen Byte Arrays wieder in ein Array zusammensetzen.