Irgendwie erklärst Du Deine https-Lösung nicht wirklich, oder ich verstehe das einfach falsch. Du willst doch der Client-Anwendung das https-Protokoll beibrigen? Sehe ich das erst mal richtig? Falls ich das richtig sehe, dann musst Du doch alles auf https umstellen. Dann ist nichts mehr mit
FTP, RDP, bla-Protokoll. Dann muss alles über https gejuchtelt werden. Das heißt programmieren bis der Arzt kommt oder nicht?
Nur der Client spricht dann HTTP/HTTPS mit dem Webserver, der kann dann wiederum mit allem auf jede erdenkliche Weise sprechen, sofern der das erreichen kann.
"Programmieren bis der Arzt kommt" das kommt darauf an, wie die Client-Anwendung gebaut wurde.
Wenn da einfach eine
FTP-Komponente draufgeklatscht wurde und dann kreuz und quer darauf zugegriffen wird, dann ja (das rächt sich also jetzt).
Hat man den Zugriff aber abstrakt gehalten, dann baut man sich einfach eine konkrete Klasse, die das nun über HTTP/HTTPS bewerkstelligt.
Delphi-Quellcode:
IFileRepository = interface
procedure ChangeDir( const ADirectory : string );
function CurrentDir : string;
procedure GetFile( const AFilename : string; AStream : TStream );
procedure PutFile( const AFilename : string; AStream : TStream );
... usw ...
end;
und statt
Delphi-Quellcode:
var
FileRepository : IFileRepository;
begin
FileRepository := TFtpFileRepository.Create( '
ftp.example.com', '
user', '
pass' );
...
end;
nimmt man also nun
Delphi-Quellcode:
var
FileRepository : IFileRepository;
begin
FileRepository := THttpFileRepository.Create( 'www.example.com/ftpapi.php', 'user', 'pass' );
...
end;
der ganz große Vorteil dabei ist auch, dass man bei der Entwicklung der Anwendung drumherum sich diesen Umweg über das Internet sparen kann, wenn man noch das hier
Delphi-Quellcode:
var
FileRepository : IFileRepository;
begin
FileRepository := TLocalFileRepository.Create( '
C:\Data\mirror-ftp-example-com\' );
...
end;
aus dem Hut zaubern kann