Hallo Zusammen,
zu allererst möchte ich euch frohe Weihnachten wünschen 😃. Ich habe folgendes Problem und hoffe, dass ihr mich dabei unterstützen könnt:
Ich versuche über eine API via WebRequest Daten in C# zu verarbeiten. Leider erhalte ich folgende Fehlermeldung:
Der Server hat eine Protokollverletzung ausgeführt.. Section=ResponseStatusLine
Eine Suche im Board ergab, dass in der APP.config folgende Zeilen hinzugefügt werden sollen:
<configuration>
<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing="true" />
</settings>
</system.net>
</configuration>
Leider hat das ganze bei mir nicht funktioniert. Folgender Quellcode setzt die Anfrage an den Webserver ab (Zielframework .NET 4.0):
try
{
//System.Net.Configuration.HttpWebRequestElement hwre = new System.Net.Configuration.HttpWebRequestElement();
//hwre.UseUnsafeHeaderParsing = true;
string url = "http://developer.echonest.com/api/v4/song/identify?api_key=" + apikey + "&code=" + echonestcodegenapicall.firstechonestapidata.code + "&version=3.15";
//MessageBox.Show(url);
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
//request.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.0.10) Gecko/2009042316 Firefox/3.0.10";
request.UserAgent = "Mozilla";
request.KeepAlive = false;
request.Method = "GET";
request.ProtocolVersion = HttpVersion.Version10;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader sr = new StreamReader(response.GetResponseStream());
string jsonstring = sr.ReadToEnd();
echonestjson = JsonConvert.DeserializeObject<EchoNestJSON>(jsonstring);
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
Ich habe bereits versucht den UserAgent und die Protokollversion von HTML zu ändern. Leider ohne Erfolg 😦.
Hat von euch jemand eine Idee, woran das liegen könnte? Vielleicht habe ich hier auch was falsch gemacht? Sitze jetzt bereits 2 Tage vor dem Problem und weis nicht mehr weiter. Ihr seit meine letzte Hoffnung 😃.
Für den Fall, dass Ihr hierzu noch Fragen habt, dann werde ich selbstverständlich antworten.
Ich freue mich auf eure Antworten und bedanke mich jetzt schon mal.
Viele Grüße
AHHHHHHHHHHH ich werde wahnsinnig -.-
Ich habe das Problem jetzt selbst lösen können. Es lag daran, dass bei dem WebServer eine viel zu lange URL angefordert wurde.
Der Parameter "Code=" war zu lang....
Ja ja... manchmal sollte man einfach manuell die Schritte durchgehen und sehen, ob es funktioniert^^
Wie gesagt frohe Weihnachten an alle 😃
Viele Grüße
KingMike