当先锋百科网

首页 1 2 3 4 5 6 7

ftp

简介

FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。
默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定。


API说明

ftp的API在luat lib有做封装,建议直接用lib的API接口。

API接口描述
ftp.close()FTP客户端关闭
ftp.command()FTP客户端命令
ftp.pasv_connect()连接到PASV接口
ftp.login()FTP客户端登录
ftp.upload()FTP客户端文件上传
ftp.download()FTP客户端文件下载
ftp.checktype()设置FTP传输类型 A:ascii I:Binary
ftp.pwd()显示当前工作目录
ftp.cwd()更改工作目录
ftp.cdup()回到上级目录
ftp.mkd()创建目录
ftp.list()列出目录列表或文件信息
ftp.deletefolder()删除目录
ftp.deletefile()删除文件

实现流程

  • 登录ftp服务器
  • 等待登录成功
  • 执行自己的命令(根据API执行,也可使用ftp.command()执行其他ftp命令)
    image.png

相关资料以及购买链接

SOCKETAPI说明

相关开发板购买链接
Air724UG开发板
Air724 开发板使用说明

常见问题

关于不支持主动模式:

模块ftp默认是被动模式,不支持主动模式,无法设置主动模式,公网下要想模块正常连接服务器,服务器肯定不能设置为主动模式,否则哪家模块都不能用。