3.1.4 FTP/FTPS¶
AT指令说明¶
设置 FTP 控制端口:AT+FTPPORT¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPPORT= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPPORT? |
+FTPPORT: OK |
|
测试命令 |
AT+FTPPORT=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
FTP 控制端口号 |
1~65535 |
缺省值为 21 |
设置 FTP 主动或被动模式:AT+FTPMODE¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPMODE= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPMODE? |
+FTPMODE: OK |
|
测试命令 |
AT+FTPMODE=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
FTP 主动被动模式 |
0 |
主动模式 |
|
1 |
被动模式 |
设置 FTP 数据传输类型:AT+FTPTYPE¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPTYPE= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPTYPE? |
+FTPTYPE: OK |
|
测试命令 |
AT+FTPTYPE=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
FTP 数据传输类型 |
“A” |
FTP ASCII 字符集 |
|
“I” |
FTP Binary 字符集 |
设置 FTP 输入类型:AT+FTPPUTOPT¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPPUTOPT= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPPUTOPT? |
+FTPPUTOPT: OK |
|
测试命令 |
AT+FTPPUTOPT=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
FTP 数据传输类型 |
“APPE” |
添加文件 |
|
“STOU” |
存储唯一的文件 |
||
“STOR” |
存储文件 |
设置 FTP 承载标识:AT+FTPCID¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPCID= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPCID? |
+FTPCID: OK |
|
测试命令 |
AT+FTPCID=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
FTP 承载标识 |
1~3 |
同+SAPBR 中定义。缺省值为 0。 |
设置 FTP 下载续传:AT+FTPREST¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPREST= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPREST? |
+FTPREST: OK |
|
测试命令 |
AT+FTPREST=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
要续传的断点 |
设置 FTP 服务器地址:AT+FTPSERV¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPSERV= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPSERV? |
+FTPSERV: OK |
|
测试命令 |
AT+FTPSERV=? |
OK |
参数定义:
参 数 |
定义 |
取 | 对取值的说明 值 | |
|
---|---|---|---|
FTP 服务器地址, IP 或域名 |
32-bit 十 进 制 数 , 用 . 分 开 , 形 式 如 : xxx.xxx.xxx.xxx。 如果是 DNS,则为长度不超过 49 的 ASCII 字符串。 |
设置 FTP 用户名称:AT+FTPUN¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPUN= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPUN? |
+FTPUN: OK |
|
测试命令 |
AT+FTPUN=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
FTP 用户名 |
为长度不超过 49 的 ASCII 字符串。 |
设置 FTP 密码:AT+FTPPW¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPPW= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPPW? |
+FTPPW: OK |
|
测试命令 |
AT+FTPPW=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
FTP 密码 |
为长度不超过 49 的 ASCII 字符串。 |
设置 FTP 下载文件名称:AT+FTPGETNAME¶
设置服务器端目标文件的名称。
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPGETNAME= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPGETNAME? |
+FTPGETNAME: OK |
|
测试命令 |
AT+FTPGETNAME=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
FTP 下载文件名称 |
为长度不超过 99 的 ASCII 字符串。 |
设置 FTP 下载文件路径:AT+FTPGETPATH¶
本命令是设置目标文件在服务器端的路径。
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPGETPATH= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPGETPATH? |
+FTPGETPATH: OK |
|
测试命令 |
AT+FTPGETPATH=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
FTP 下载文件路径 |
长度不超过 255 的 ASCII 字符串。 |
设置 FTP 上传文件名称:AT+FTPPUTNAME¶
设置将文件上传到服务器后的保存名称。
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPPUTNAME= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPPUTNAME? |
+FTPPUTNAME: OK |
|
测试命令 |
AT+FTPPUTNAME=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
FTP 上传文件名称 |
长度不超过 99 的 ASCII 字符串。 |
设置 FTP 上传文件路径:AT+FTPPUTPATH¶
设置将文件上传到服务器后的保存目录。
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPPUTPATH= |
OK |
正常返回 |
ERROR |
输入格式有误 |
||
查询命令 |
AT+FTPPUTPATH? |
+FTPPUTPATH: OK |
|
测试命令 |
AT+FTPPUTPATH=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
FTP 上传文件路径 |
长度不超过 99 的 ASCII 字符串。 |
远程服务器上创建文件目录:AT+FTPMKD¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
执行命令 |
AT+FTPMKD |
OK +FTPMKD: 1,0 |
创建成功 |
OK +FTPMKD: 1, |
创建失败 |
||
+CME ERROR: |
如果是命令错误 |
||
测试命令 |
AT+FTPMKD=? |
OK |
|
注意事项 |
执行命令创建的 文件目录由命令A T+FTPGETPATH定义 |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
错误码 |
与 AT+FTPGET 命令的定义相同 |
远程服务器上删除文件目录:AT+FTPRMD¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
执行命令 |
AT+FTPRMD |
OK +FTPRMD: 1,0 |
删除成功 |
OK +FTPRMD: 1, |
删除失败 |
||
+CME ERROR: |
如果是命令错误 |
||
测试命令 |
AT+FTPRMD=? |
OK |
|
注意事项 |
执行命令删除的 文件目录由命令A T+FTPGETPATH定义 |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
错误码 |
与 AT+FTPGET 命令的定义相同 |
下载文件:AT+FTPGET¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
设置命令 |
AT+FTPGET=[,] |
OK |
输入AT+FTPGET=1 的返回 |
+FTPGET:2, ……..数据……….. OK |
输入: AT+FTPGET=2, 的返回 |
||
URC 上报 |
+FTPGET:1,1 |
输入 AT+FTPGET=1后,有 此上报,表示有数 据了,第一个参数 1表示为1 |
|
+FTPGET:1, |
输入AT+FTPGET= 1后,有此上报,表 示FTP下载失败,第 一个参数1表示为1 |
||
+FTPGET:1,0 |
表示 数据传输结束,第 一个参数1表示为1 |
||
测试命令 |
AT+FTPGET=? |
OK |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
工作模式 |
1 |
打开 FTP 会话 |
|
2 |
读入 FTP 下载数据 |
||
请求读入的数据长度 |
1~1460 |
||
确认读入的数据长度 |
1~1460 |
可能小于。0 表示没有数据可以读入。 |
|
错误码 |
61 |
网络错误 net error |
|
62 |
DNS 错误 DNS error |
||
63 |
连接错误 connect error |
||
64 |
超时 timeout |
||
65 |
服务器错误 server error |
||
66 |
操作禁止operation not allowed |
||
70 |
应答错误 reply error |
||
71 |
用户错误 user error |
||
72 |
口令错误 password error |
||
73 |
类型错误type error |
||
74 |
保持错误 rest error |
||
75 |
被动错误 passive error |
||
76 |
主动错误active error |
||
77 |
操作错误 operate error |
||
78 |
上传错误 upload error |
||
79 |
下载错误 download error |
||
80~84 |
FTP SSL 连接错误 |
||
85 |
文件错误 |
||
86 |
主动退出 |
上传文件:AT+FTPPUT¶
语法规则:
命 | 语法 令 | 类 | 型 | |
返回 |
说明 |
|
---|---|---|---|
设 | AT | OK 置 | +FTPPUT=[,] | 命 | | 令 | | |
输入AT+FTPPUT=1的返回 |
||
+FTPPUT:2, …….. //input data here OK |
输入: AT+FTPPUT=2, 的返回 |
||
OK +FTPPUT: 1,0 |
输入: AT+FTPPUT=2,0 的返回 |
||
U | + R | FTPPUT:1,1, C | 上 | 报 | |
输 入AT+FTPPUT=1后,有此上 报,表示可以上传数据了此 时通过输入AT+FTPPUT=2,上 传数据第一个参数1表示为1 |
||
+FTPPUT:1,0 |
表示数据传输会话 结束。第一个参数1表示为1 |
||
+FTPPUT:1, |
如果 =1,而且FTP会话失败。错 误码定义请参考AT+FTPGET 错误码定义 |
||
测 | AT+FTPPUT=? | OK 试 | | 命 | | 令 | | |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
FTP 上传工作模式 |
1 |
打开 FTP 会话 |
|
2 |
写 FTP 上传数据 |
||
请求上传的数据长度 |
0- |
||
确认可以上传的数据长度 |
|||
单次可以上传的最大的长度,取决于网络状态 |
获取远程服务器上文件大小:AT+FTPSIZE¶
语法规则:
命令类型 |
语法 |
返回 |
说明 |
---|---|---|---|
执行命令 |
AT+FTPSIZE |
OK +FTPSIZE: 1,0, |
获取文件大小成功 |
OK |
获取文件大小失败 |
||
+FTPSIZE: 1,,0 |
|||
+CME ERROR: |
如果是命令错误 |
||
测试命令 |
AT+FTPSIZE=? |
OK |
|
注意事项 |
文件由命令 AT+FTPGETNAME和A T+FTPGETPATH指定 |
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
文件大小 |
单位:字节 |
||
错误码 |
与 AT+FTPGET 命令的定义相同 |
获取远程服务器上文件目录:AT+FTPLIST¶
语法规则:
命 | 语法 令 | 类 | 型 | |
返回 |
|
---|---|---|
执 | AT+FTPLIST=[,] 行 | 命 | 令 | |
如果=1,则命令格式为: AT+FTPLIST=1 返回值为: OK或 +CME ERROR: |
|
如果=2,则命令格式为: AT+FTPLIST=2, 返回值为: +FTPLIST:2, ….数据… OK |
||
测 | AT+FTPLIST=? 试 | 命 | 令 | |
OK |
|
U | 输入AT+FTPLIST=1后, R | 如果是一个成功的FT C | P会话,后续会有如下的URC上报: 上 | +FTPLIST:1,1 报 | 如果是FTP数据传输
|
参数定义:
参数 |
定义 |
取值 |
对取值的说明 |
---|---|---|---|
工作模式 |
1 |
打开 FTP 获取文件目录会话 |
|
2 |
读取 FTP 获取文件目录的数据 |
||
请求的数据的长度 |
1~1460 |
||
实际的数据长度 |
|||
同+FTPGET 中定义 |
保存 FTP 应用上下文:AT+FTPSCONT¶
语法规则:
命 | 语 令 | 法 类 | 型 | |
返回 |
说明 |
|
---|---|---|---|
查 | AT+ | +FTPSCONT: +FTPSERV: | 询 | FTP | +FTPPORT: +FTPUN: +FTPPW: | 命 | SCO | +FTPCID: +FTPMODE: +FTPTYPE: | 令 | NT? | +FTPPUTOPT: +FTPREST: |
|
|||
执 | AT | OK 行 | +FT | 命 | PSC | 令 | ONT | |
将FTP 上下文保存,等模块重启后, 将自动载入上下文参数并生效 |