Есть ли способ напрямую отправлять файлы с одного API на другой FTP-сервер, не загружая их на локальный компьютер в Python 3.
В настоящее время мы загружаем из одного API на локальный, а затем отправляем его на FTP-сервер, чтобы избежать этого скачка из потока данных, напрямую отправляя файлы на сервер.
Протокол FTP предусматривает инициацию передачи данных между двумя удаленными хостами от стороннего клиента. Это называется режим прокси. К сожалению, большинство серверов отключают его по соображениям безопасности, потому что раньше это был очень эффективный способ для атак DOS.
Если у вас есть контроль над обоими серверами, и если оба используют FTP, и если они не доступны для общественности, это может быть очень эффективным.
В любом другом случае данные должны будут пройти через клиента. Лучшее, что можно сделать, - это открыть оба соединения и передать данные на целевой хост, как только они будут получены из источника, без сохранения их на диске.
Один из вариантов будет иметь другую функцию API (TransferFile,...), которая будет передавать данные с сервера API на FTP-сайт. Затем вы просто вызываете этот метод API из своего кода, не загружая данные на локальный сервер.
Вы можете использовать байтовые данные файла (они будут храниться в оперативной памяти) и передавать их другому API.