So, bin nach langer Zeit (3 Jahre+) mal wieder an einer ernsthaften Entwicklung in Delphi dran: eine Schnittstelle (extern), die bislang über
Soap angesprochen wurde, hat den Support für
Soap nun endgültig aufgekündigt. Ab jetzt ist die Rest-
Api zu verwenden.
Es muss also ein Rest-
Api-Client her. Soweit so gut.
Die Rest-
Api erwartet an einer Stelle ein multipart-formdata body. Die einzelnen Parts können wiederum die verschiedensten Content Types sein. Ein application/json ist immer dabei und dann diverse Dateien, also application/pdf, image/png, text/plain, whatever.
Und genau da stehe ich auf dem Schlauch, wie ich das in Delphi hinbekomme.
Ich nutze die unter REST.Client bereit gestellten Klassen, dh. TRESTClient, TRESTRequest und TRESTResponse.
Hier komme ich für einen Multipart-Body aber nicht wirklich weiter.
Zwar lässt sich mit FRestRequest.AddParameter('myName', 'myValue', TRESTRequestParameterKind.pkREQUESTBODY) ein Multipart-Body erzeugen, der jeweilige content type lässt sich so aber nicht festlegen. Der content type ist aber ziemlich wichtig
Nach etwas Recherche bin ich auf System.Net.Mime.TMultipartFormData gestoßen. Die Klasse bietet ziemlich sinnvoll aussehende Methoden. Zb. TMultipartFormData.AddFile, wo ich einfach nur den Datei-Pfad angeben brauche und sich damit vielleicht auch meine nächste Frage, wie ich denn in Delphi aus einer Datei den passenden Octet-Stream erzeuge, erübrigt
Nur sehe ich gar nicht, wie TMultipartFormData mit den REST.Client Klassen zusammenspielt.
Da dachte ich mir, vielleicht haben ja die Delphi-Experten den ein oder anderen Tipp für mich
Derzeit ist Delphi 10.2 im Einsatz.