ftp - FTP客户端
适用范围
| 层面 | 说明 |
|---|---|
| 运行环境 | LuatOS-Air 脚本框架,展锐 8910 平台(Air724UG / Air722UG / Air795UG / Air720UH 等) |
| 前提条件 | 需数据链路 + FTP 服务器 |
| 接口差异 | ftp.login 只实现了被动(PASV)模式,ftp_mode 传 PORT 无效 |
| 不适用 | Air780E 及以后跑 LuatOS 的 Cat.1 模组;这些模组的同名库在 osapi 里是另一套接口,不能照抄 |
ftp.command(command, timeout)
FTP客户端命令
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| command | string | 命令,例如"PWD","HELP","SYST" |
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
返回值
string,string,返回 response_code, response_message
例子
无
ftp.pasv_connect(timeout) (local函数 无法被外部调用)
连接到PASV接口
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
返回值
string,string,返回 response_code, response_message
例子
无
ftp.login(ftp_mode, host, port, username, password, timeout, ssl, cert)
FTP客户端登录
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| ftp_mode | string | FTP模式"PASV"or"PORT",默认PASV:被动模式,PORT:主动模式(暂时仅支持被动模式) |
| host | string | ip地址 |
| port | string | 端口,默认21 |
| username | string | 用户名 |
| password | string | 密码 |
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
| ssl | bool | 可选参数,默认为nil,ssl,是否为ssl连接,true表示是,其余表示否 |
| cert | table | 可选参数,默认为nil,cert,ssl连接需要的证书配置,只有ssl参数为true时,才参数才有意义,cert格式如下: { caCert = "ca.crt", --CA证书文件(Base64编码 X.509格式),如果存在此参数,则表示客户端会对服务器的证书进行校验;不存在则不校验 clientCert = "client.crt", --客户端证书文件(Base64编码 X.509格式),服务器对客户端的证书进行校验时会用到此参数 clientKey = "client.key", --客户端私钥文件(Base64编码 X.509格式) clientPassword = "123456", --客户端证书文件密码[可选] } |
返回值
string,string,返回 response_code, response_message
例子
无
ftp.upload(remote_file, local_file, timeout)
FTP客户端文件上传
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| remote_file | string | 远程文件名 |
| local_file | string | 本地文件名 |
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
返回值
string,string,返回 response_code, response_message
例子
无
ftp.download(remote_file, local_file, timeout)
FTP客户端文件下载
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| remote_file | string | 远程文件名 |
| local_file | string | 本地文件名 |
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
返回值
string,string,返回 response_code, response_message
例子
无
ftp.checktype(mode, timeout)
设置FTP传输类型 A:ascii I:Binary
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| mode A:ascii | string | I:Binary |
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
返回值
string,string,返回 response_code, response_message
例子
无
ftp.pwd(timeout)
显示当前工作目录
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
返回值
string,string,返回 response_code, response_message
例子
无
ftp.cwd(path, timeout)
更改工作目录
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| path | string | 工作目录 |
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
返回值
string,string,返回 response_code, response_message
例子
无
ftp.cdup(timeout)
回到上级目录
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
返回值
string,string,返回 response_code, response_message
例子
无
ftp.mkd(path, timeout)
创建目录
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| path | string | 目录 |
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
返回值
string,string,返回 response_code, response_message
例子
无
ftp.list(file_irectory, timeout)
列出目录列表或文件信息
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| file_irectory | string | 目录或文件 |
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
返回值
string,string,返回 response_code, response_message
例子
无
ftp.deletefolder(file_irectory, timeout)
删除目录
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| file_irectory | string | 路径目录 |
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
返回值
string,string,返回 response_code, response_message
例子
无
ftp.deletefile(file_irectory, timeout)
删除文件
参数
| 名称 | 传入值类型 | 释义 |
|---|---|---|
| file_irectory | string | 路径文件(相对/绝对) |
| timeout | number | 可选参数,默认为0 接收超时时间,单位毫秒 |
返回值
string,string,返回 response_code, response_message
例子
无