![]() |
rest server wie muss das post Command aussehen oder welchen Server könnte ich verwend
Ich habe gerade ein Brett vor dem Kopf.
Ich habe einen test Restserver. Diesen kann ich ohne Probleme über den Chrome Browser so ansprechen
Delphi-Quellcode:
als Antwort bekomme ich in chrome ...
https://xxx.xxxxx.myfritz.net/datasnap/rest/TServerMethods1/ReverseString/A%20B%20C/
Delphi-Quellcode:
da läuft also alles Palletti.
{"result":["C B A"]}
wenn ich aber das "poste"
Delphi-Quellcode:
bekomme ich als Antwort
const
Lurl = 'https://xxxx.xxxxxxxx/datasnap/rest/TServerMethods1/'; var LsStream: TStringStream; LsList: TStringList; begin LsList:= TStringList.Create; LsStream := TStringStream.Create(); try LsList.Add('ReverseString=abc'); nthtprqst1.Post(Lurl,LsList,LsStream); Memo1.Lines.Add(LsStream.DataString) ; finally LsStream.Free; LsList.Free; end; end;
Delphi-Quellcode:
Wo ist da mein Denkfehler, wie sollte es aussehen?
{"error":"Ung\u00FCltiges Anforderungsformat. \/className\/methodName und etwaige Parameter erwartet."}
Dank euch und Gruß |
AW: rest server wie muss das post command aussehen
Hast Du es mal mit GET statt POST versucht?
|
AW: rest server wie muss das post command aussehen
Delphi-Quellcode:
wenn ich das per get an den Server schicke
Lurl = 'https://xxxxxx7.myfritz.net/datasnap/rest/TServerMethods1/ReverseString/A%20B%20C/';
Kommt am server das result raus
Delphi-Quellcode:
das geht.
server = C B A
Der Client der am ende Daten schickt sendet nur Post ![]() Ich habe am (client)server der das post command schicken soll nur ein Feld für die url und ein Textfeld der auch als text gesendet wird und muss den Server drumrum bauen damit er eben diese lesen kann. |
AW: rest server wie muss das post command aussehen
Dann schau Dir einmal div. frameworks wie z.B. MARS an. Ich selber verwende für REST mit Delphi das Delphi MVC Framework und komme gut damit klar. Ob diese ganze Funktionalität mit Datasnap erreicht werden kann, weiß ich nicht, bezweifle das aber.
|
AW: rest server wie muss das post command aussehen
Es muss theoretisch kein Rest Server sein. Ich brauch halt eine einfache Lösung um diese webhooks zu empfangen.
da der DSHTTPWebDispatcher1 installiert ist, dachte ich ich das wäre damit möglich. |
AW: rest server wie muss das post command aussehen
Mache ich es z.B. so
Delphi-Quellcode:
Lurl = 'https://xxxxx.myfritz.net/datasnap/';
var LsStream,Lstream1: TStringStream; LsList: TStringList; begin LsList:= TStringList.Create; LsStream := TStringStream.Create(); try LsList.Add('className=TServerMethods1'); LsList.Add('ReverseString=abc'); nthtprqst1.post(Lurl,LsList,LsStream); Memo1.Lines.Add('Client = ' +LsStream.DataString) ; finally LsStream.Free; LsList.Free; end; end; bekomme ich vom Server als Antwort das
Delphi-Quellcode:
Client = In Anforderung / angegebenes Protokoll wird nicht unterstützt. Folgende Protokolle werden aktuell unterstützt: rest, json, tunnel
|
AW: rest server wie muss das post command aussehen
Du müsstest halt wissen, wie die Daten aussehen, die der Client sendet. Ich tippe mal ins Blaue und vermute, es handelt sich um einen Payload in JSON. Das müsste aber in der Doku stehen, ansonsten könntest Du mit Wireshark mitsniffen und Dir die gesendeten Daten anschauen.
|
AW: rest server wie muss das post command aussehen
![]() |
AW: rest server wie muss das post command aussehen
Zitat:
|
AW: rest server wie muss das post command aussehen
Mir wäre auch wirklich erstmal geholfen wie ich post Daten an den Server schicke. Und oder falls ich den Server konfigurieren muss ... wie ich das tun sollte.
Ich könnte auch einen Soap Server nehmen. Hauptsache ich kann irgendwie Post Daten verarbeiten. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:04 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-2025 by Thomas Breitkreuz