![]() |
AW: HTTPS / G-Server
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen,
es war so wie mjustin gesagt hat. Ich hatte das auch bis eben alles am laufen. Allerdings gibt es eine neue Version von diesem G-Server der vermutlich eine anderes Protokoll nutzt. Die Frage ist, was mache ich falsch, bzw. wie kann ich das mit der Http Indy Kompo anpassen. Hier mal mein Code und im Anhang die Fehlermeldung...
Delphi-Quellcode:
Gruß Jens
procedure TfGServer.btnGServerClick(Sender: TObject);
var s: String; Params: TStrings; Cookie : String; begin Params := TStringList.Create; try mmoDiagnose.Clear; Params.add('gsUser='+edtLoginName.Text); Params.Add('gsPass='+edtLoginPass.Text); mmoDiagnose.Lines.Add (idhtpGServer.Post('http://'+edtIPGServer.Text+':'+edtPort.Text+'/login', Params)); Cookie:= IdCookieManager.CookieCollection.Items[0].CookieText; idhtpGServer.Request.CustomHeaders.Add('Cookie:' + Cookie); mmoDiagnose.Lines.Add(''); mmoDiagnose.Lines.Add (idhtpGServer.Get('http://'+edtIPGServer.Text+':'+edtPort.Text+ '/cgi-bin/gadgetapi?cmd=SetDisplay&device='+edtNumber.Text+ '&contentsOfDisplay='+edtGServerText.Text)); finally Params.free; end; end; |
AW: HTTPS / G-Server
Delphi-Quellcode:
idhtpGServer.HandleRedirects := true;
|
AW: HTTPS / G-Server
Danke, das war´s.
Gruß Jens |
AW: HTTPS / G-Server
Hallo zusammen,
Jetzt stehe ich mit der ganzen Sache schon wieder vor einem Problem. Mit der Diagnose Software, kann man z.B. folgenden Text an ein Telefon über IP senden... "Hallo ich bin ein Text" Dieser wird auch komplett im Display des entsprechenden Endgerätes angezeigt. Sende ich den selben String über meine Software, wird nur das erste Wort im Display des Endgerätes angezeigt. Ich vermute das hat irgendwas mit den Leerzeichen im HTTP zu tun.:gruebel: Hat da jemand eine Idee, wie man sowas macht? Gruß Jens |
AW: HTTPS / G-Server
Hallo,
schau mal bitte bei Wikipedia nach: ![]() Demnach müsste es zwei Möglichkeiten geben: Leerzeichen durch + ersetzen oder Leerzeichen durch %20 ersetzen. |
AW: HTTPS / G-Server
Danke,
es ist immer wieder schön mit Euch. Ich habe jetzt mal gesucht und dabei festgestellt, das so Zeichen wie '+' etc. auch zu diesem Problem führen. Die Lösung ist mir auch klar.
Delphi-Quellcode:
Gibt es irgendwo eine Übersicht der Sonderzeichen und deren Umwandlung.
StringReplace
Gruß Jens |
AW: HTTPS / G-Server
Hallo Jens,
Zitat:
Spar Dir das, binde einfach die Unit IdURL ein und nutze es so:
Delphi-Quellcode:
s := TIdURI.URLEncode(mystring);
Gruß, Assertor |
AW: HTTPS / G-Server
Danke für den Tip,
allerdings Funktioniert das nicht. Das Funktion Ersetzt mir die Leerzeichen nicht mit einem %20 etc. Diese müssen aber im String enthalten sein, da ich diesen sonst nicht senden kann. Die Telefonanlage, benötigt diese Zeichen, um diese wieder in Leerzeichen umwandeln zu können. Gruß Jens |
AW: HTTPS / G-Server
Hallo Jens,
Zitat:
Dann am besten Dein Space-Replace mit dem URLEncode() kombinieren. Das sollte gehen. Gruß, Assertor |
AW: HTTPS / G-Server
Das ist leider so. Die Funktion ist zwar OK, aber der Fehler ist bei dem Zeichen + z.B. genauso. Die Decode Funktion ist leider auch nicht besser.
Habe das ganze jetzt mit StringReplaced gelöst. Allerdings weiß ich nicht, welche Zeichen noch Problem verursachen. Gruß Jens |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz