Skrip saya sejauh ini berfungsi untuk membuka koneksi FTP jarak jauh, mengubah direktori, dan mengunduh file. Dua langkah terakhir saya adalah menghapus file hapus setelah diunduh sepenuhnya dan kemudian tutup koneksi. Dokumentasi ACF (dan cfdocs) tampaknya hanya memiliki sedikit informasi tentang ini. Inilah yang saya miliki sejauh ini:

ftpConnection = ftpService.open(
  action = 'open', 
  connection = variables.ftpConnectionName, 
  server = variables.ftpServerName, 
  username = '***************', 
  password = '***************', 
  secure='true');

if( ftpConnection.getPrefix().succeeded ){
    fileList = ftpService.listdir(directory = variables.ftpPath, connection= variables.ftpConnectionName, name='pendingFiles', stopOnError='true').getResult();
      if( fileList.recordCount ){
        changeFtpConnectionDir = ftpService.changeDir(
        connection = variables.ftpConnectionName,
        directory = variables.ftpPath);


      getFtpConnection = ftpService.getFile(
        connection = variables.ftpConnectionName,
        remoteFile = fileList.name,
        localFile = local.localPath & fileList.name,
        failIfExists = false,
        timeout = 3000
      );

      deleteRemoteFile = ftpService.remove(
        connection = variables.ftpConnectionName,
        remoteFile = fileList.name
      };

      closeFtp = ftpService.close(
          connection = variables.ftpConnectionName
      );

   };
};

Kesalahan dilemparkan pada remoteFile = fileList.name. Karena saya sudah mengubah direktori, saya rasa saya tidak perlu meletakkan path lengkap di sini.

Saya meletakkan seluruh skrip karena sepertinya tidak ada banyak sumber daya di luar sana tentang penggunaan fungsi ftpServer() yang lebih baru.

3
Steve 12 Agustus 2019, 17:15

1 menjawab

Jawaban Terbaik

D'oh - masalah saya salah ketik:

deleteRemoteFile = ftpService.remove(
    connection = variables.ftpConnectionName,
    remoteFile = fileList.name
  );// had } instead of )

Saya masih akan membiarkan ini sebagai sumber daya untuk ftpService()

4
Steve 12 Agustus 2019, 15:17