Mit dem folgenden Code geht es erfolgreich via
Indy:
Delphi-Quellcode:
with TIdHTTP.Create(
nil)
do
try
var FIdSSLIOHandlerSocketOpenSSL:TIdSSLIOHandlerSocketOpenSSL:=TIdSSLIOHandlerSocketOpenSSL.Create(
nil);
var Params: TIdMultiPartFormDataStream;
filename:=StringReplace(Training.filename, '
.ictt', '
.fit', [rfIgnoreCase]);
FIdSSLIOHandlerSocketOpenSSL.SSLOptions.Method := sslvTLSv1_2;
FIdSSLIOHandlerSocketOpenSSL.SSLOptions.SSLVersions := [sslvTLSv1_2];
IOHandler := FIdSSLIOHandlerSocketOpenSSL;
Request.ContentType := '
multipart/form-data';
Request.CustomHeaders.add('
Authorization: Bearer ' + bearer);
Params := TIdMultiPartFormDataStream.Create;
try
params.AddFile('
file', filename, GetMIMETypeFromFile(filename));
ResponseStr := Post('
https://pushinglimits.club/api/oauth/upload_single_fit_file', Params);
finally
Params.Free;
end;
finally
Free;
end;
Macht von außen betrachtet, genau das gleiche, aber irgendwie scheint die interne Formatierung anders zu sein.