Appearance
Archivos y SFTP
set_return_file()
Establece un archivo para ser descargado por el usuario.
lua
set_return_file(name, contentType, value)Permite descargar contenido generado dinámicamente (CSV, JSON, PDF, etc.).
sftp_connect()
Crea una conexión SFTP para transferencia de archivos.
lua
sftp = sftp_connect(host, port, user, password)Devuelve un objeto con los siguientes métodos:
Métodos del objeto SftpService
exists()
lua
existe = sftp:exists(path)Devuelve true si el archivo existe en el servidor.
list()
lua
archivos = sftp:list(path)Devuelve un array con los nombres completos de los archivos del directorio.
disconnect()
lua
sftp:disconnect()Cierra la conexión SFTP.
Ejemplo: conexión reutilizable
En lugar de llamar sftp_file_exists() 56 veces (que abre una conexión nueva cada vez), conviene conectarse una sola vez y reutilizar:
lua
local sftp = sftp_connect("host", 22, "user", "password")
for i = 1, 56 do
if sftp:exists("/backups/archivo-" .. i .. ".zip") then
log("Archivo " .. i .. " encontrado")
end
end
sftp:disconnect()sftp_get_connection()
Resuelve una conexión SFTP de la base de datos por nombre y devuelve un objeto SftpService listo para conectar.
lua
sftp = sftp_get_connection(connectionName)A diferencia de sftp_connect(), toma el nombre de una conexión configurada en la base de datos en lugar de credenciales directas.
Ejemplo:
lua
local sftp = sftp_get_connection("RSYNC.NET")
sftp:connect()
for i = 1, 56 do
if sftp:exists("/path/archivo-" .. i .. ".zip") then
log("Encontrado")
end
end
sftp:disconnect()sftp_file_exists()
Verifica si un archivo existe en un servidor SFTP usando una conexión nombrada de la base de datos.
lua
existe = sftp_file_exists(path, connectionName)A diferencia de sftp:exists(), esta función abre y cierra una conexión nueva en cada llamada. Para múltiples verificaciones es más eficiente usar sftp_get_connection() + sftp:exists().