![]() |
AW: Datenübertragung via HTTP POST
Dann hast Du wohl einen Fehler in Deinem Code. Da wir den aber nicht kennen, können wir auch nicht sagen, wo genau.
|
AW: Datenübertragung via HTTP POST
Zitat:
Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
var lParamList: TStringList; begin lParamList := TStringList.Create; lParamList.Add('{'); lParamList.Add('"message":"test message",'); lParamList.Add('"type":"TEST",'); lParamList.Add('"sender":"self",'); lParamList.Add('"timestamp":"1424950740000"'); lParamList.Add('}'); try memo1.Lines.Text := idHTTP1.Post('http://192.168.0.5/rest/external/http', lParamList); finally lParamList.Free; end; end; |
AW: Datenübertragung via HTTP POST
Sind denn die Parameter für Accept und Content-Type richtig gesetzt (siehe mjustins Beitrag)?
Delphi-Quellcode:
HTTP.Request.Accept := 'application/json';
HTTP.Request.ContentType := 'application/json'; |
AW: Datenübertragung via HTTP POST
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
var lParamList: TStringList; begin lParamList := TStringList.Create('{"日本語":42}',TEncoding.UTF8); // Fehlermeldung lParamList.Add('{'); lParamList.Add('"message":"test message",'); lParamList.Add('"type":"TEST",'); lParamList.Add('"sender":"self",'); lParamList.Add('"timestamp":"1424950740000"'); lParamList.Add('}'); try idHTTP1.Request.Accept := 'application/json'; idHTTP1.Request.ContentType := 'application/json'; memo1.Lines.Text := idHTTP1.Post('http://192.168.0.5/rest/external/http', lParamList); finally lParamList.Free; end; end; |
AW: Datenübertragung via HTTP POST
Mal tust Du zu wenig, mal zuviel. Wenn schon, dann mit einem TStringStream statt einer TStringList.
Delphi-Quellcode:
var
lParamList: TStringStream; begin lParamList := TStringStream.Create('',TEncoding.UTF8); // Fehlermeldung sollte jetzt verschwinden lParamList.WriteString('{'); lParamList.WriteString('"message":"test message",'); lParamList.WriteString('"type":"TEST",'); lParamList.WriteString('"sender":"self",'); lParamList.WriteString('"timestamp":"1424950740000"'); lParamList.WriteString('}'); try idHTTP1.Request.Accept := 'application/json'; idHTTP1.Request.ContentType := 'application/json'; memo1.Lines.Text := idHTTP1.Post('http://192.168.0.5/rest/external/http', lParamList); finally lParamList.Free; end; |
AW: Datenübertragung via HTTP POST
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
|
AW: Datenübertragung via HTTP POST
Du solltest das JSON-Objekt nicht händisch zusammenbasteln wie im Beispiel, sondern eine Bibliothek dafür verwenden. Ich weiß nicht mehr, ob es System.JSON unter XE7 bereits gab, aber alternativ kannst Du ja einmal nach SuperObject googlen.
|
AW: Datenübertragung via HTTP POST
Zitat:
|
AW: Datenübertragung via HTTP POST
|
AW: Datenübertragung via HTTP POST
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
teste gerade noch ein wenig, habe hier noch einen Fehler! verstehe ich nicht ??
Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
var ParamList : TStringStream; begin ParamList := TStringStream.Create('', TEncoding.UTF8); ParamList.WriteString('{'); ParamList.WriteString('"message":"test message",'); ParamList.WriteString('"type":"ALARM",'); ParamList.WriteString('"sender":"192.168.0.217",'); ParamList.WriteString('"timestamp":"1424950740000",'); ParamList.WriteString('"data":{"address": "'(Edit1.Text)'"}'); //pas(49) ist doch gesetzt! // oder muss ich noch ein strtoint(Edit1.Text) setzen ParamList.WriteString('}'); try idHTTP1.Request.Accept := 'application/json'; idHTTP1.Request.ContentType := 'application/json'; memo1.Lines.Text := idHTTP1.Post('http://192.168.0.5/rest/external/http', ParamList); finally ParamList.Free; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:48 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