网络模块
分类 :网络时间
函数:net.time() 网络时间
原函数名 : getNetTime
函数说明 : 获取网络时间。
函数方法 : net.time();
返回值 : 时间 time
返回值 | 类型 | 说明 |
---|---|---|
time | number | 时间戳 |
示例
time = net.time();
if time ~= -1 then
tt = os.date("*t", time);
if tt.year > 2014 and tt.month > 2 and tt.day > 15 and tt.hour > 12 and tt.min > 30 and tt.sec >20 then
sys.dialog("当前时间超过了2014年2月15日12点30分20秒");
end
else
sys.dialog("请连接网络");
end
示例:获取网络时间判断脚本是否到期
endtime = os.time{year=2016, month=1, day=1, hour=0, min=0, sec=0};--到期时间2016年1月1日0点0分0秒
if endtime > net.time() then --结束日期大于现在日期
sys.dialog("脚本未到期");
else
sys.dialog("脚本已到期");
end
注意事项:
该时间与lua的os.time()函数一样, 返回的是UTC时间1970年1月1日0时0分0秒到现在流逝的秒数, 可以配合os.date()转换成方便阅读的格式。返回-1表示不能连接网络时间服务器
分类 :HTTP函数
函数:net.http.get() HTTP Get请求
原函数名 : httpGet
函数说明 : HTTP协议访问。
函数方法 : net.http.get(远程地址 url, 超时 timeout?);
返回值 : 数据 data, 状态码 status
参数 | 类型 | 说明 | 必填 |
---|---|---|---|
url | string | 网址URL | 必填 |
timeout | number | 超时时间 | 可选参数,默认10秒 |
返回值 | 类型 | 说明 |
---|---|---|
data | string | 响应数据, 失败的话返回空字符串 |
status | number | 响应状态码 |
示例
data, status = net.http.get('http://www.baidu.com'); -- 获取www.baidu.com的内容
sys.log(data); -- www.baidu.com的内容
sys.log(status); -- 状态码
函数:net.http.post() POST协议访问
原函数名 : httpPost
函数说明 : HTTPPOST协议访问。
函数方法 : net.http.post(远程地址 url, 请求头部 header?, 请求数据 body?, 超时 timeout?);
返回值 : 数据 data, 状态码 status
参数 | 类型 | 说明 | 必填 |
---|---|---|---|
url | string | 网址URL | 必填 |
header | table | 请求头 | 非必填 |
body | string or table | 请求数据 | 非必填 |
timeout | number | 超时时间 | 非必填,默认10秒 |
返回值 | 类型 | 说明 |
---|---|---|
data | string | 响应数据, 失败的话返回空字符串 |
status | number | 响应状态码 |
示例
header = {}
header["Content-Type"] = "application/x-www-form-urlencoded"
data, status = net.http.post('http://www.baidu.com', header, 'x=1', 10)
sys.log(data); -- 响应数据
sys.log(status); -- 响应状态码
分类 :FTP函数
函数:net.ftp.get() 文件下载
原函数名 : ftpGet
函数说明 : ftp下载。
函数方法 : net.ftp.get(远程地址 url, 本地路径 path, 用户 user, 密码 pass, 超时 timeout?);
返回值 : 是否成功 flag, 错误信息 err
参数 | 类型 | 说明 | 必填 |
---|---|---|---|
url | string | 远程文件地址 | 必填 |
path | string | 本地文件路径 | 必填 |
user | string | FTP服务器用户名 | 必填 |
pass | string | FTP服务器密码 | 必填 |
timeout | number | 超时时间 | 非必填,默认10秒 |
返回值 | 类型 | 说明 |
---|---|---|
flag | boolean | 返回true或者false |
err | string | 错误详细信息 |
示例
-- 将FTP服务器192.168.1.100上路径为/a.txt的文件下载到/var/touchelf/a.txt
flag,err = net.ftp.get("ftp://192.168.1.100/a.txt", "/var/touchelf/a.txt", "user", "pass")
if flag then
sys.dialog("下载成功")
else
sys.log(err)
sys.dialog("下载失败")
end
函数:net.ftp.put() 文件上传
原函数名 : ftpPut
函数说明 : ftp上传。
函数方法 : net.ftp.put(远程地址 url, 本地路径 path, 用户 user, 密码 pass, 超时 timeout?);
返回值 : 是否成功 flag, 错误信息 err
参数 | 类型 | 说明 | 必填 |
---|---|---|---|
url | string | 远程文件地址 | 必填 |
path | string | 本地文件路径 | 必填 |
user | string | FTP服务器用户名 | 必填 |
pass | string | FTP服务器密码 | 必填 |
timeout | number | 超时时间 | 非必填,默认10秒 |
返回值 | 类型 | 说明 |
---|---|---|
flag | boolean | 返回true或者false |
err | string | 错误详细信息 |
示例
-- 将本地文件/var/touchelf/a.txt上传为FTP服务器192.168.1.100上路径为/a.txt的文件
flag,err = net.ftp.put("ftp://192.168.1.100/a.txt", "/var/touchelf/a.txt", "user", "pass")
if flag then
sys.dialog("上传成功")
else
sys.log(err)
sys.dialog("上传失败")
end
函数:net.ftp.newDir() 新建目录
函数说明 : 在FTP服务器上新建目录
函数方法 : net.ftp.newDir(远程地址 url, 用户 user, 密码 pass, 超时 timeout?);
返回值 : 是否成功 flag, 错误信息 err
参数 | 类型 | 说明 | 必填 |
---|---|---|---|
url | string | 远程文件地址 | 必填 |
user | string | FTP服务器用户名 | 必填 |
pass | string | FTP服务器密码 | 必填 |
timeout | number | 超时时间 | 非必填,默认10秒 |
返回值 | 类型 | 说明 |
---|---|---|
flag | boolean | 返回true或者false |
err | string | 错误详细信息 |
示例
-- 在FTP服务器192.168.1.100根目录下创建一个 a 文件夹
flag,err = net.ftp.newDir("ftp://192.168.1.100/a", "user", "pass")
if flag then
sys.dialog("新建目录成功")
else
sys.log(err)
sys.dialog("新建目录失败")
end
--也可一次性创建多层目录
net.ftp.newDir("ftp://192.168.1.100/a/b/c", "user", "pass")
函数:net.ftp.remove() 文件删除
函数说明 : 删除FTP服务器上的文件
函数方法 : net.ftp.remove(远程地址 url, 用户 user, 密码 pass, 超时 timeout?);
返回值 : 是否成功 flag, 错误信息 err
参数 | 类型 | 说明 | 必填 |
---|---|---|---|
url | string | 远程文件地址 | 必填 |
user | string | FTP服务器用户名 | 必填 |
pass | string | FTP服务器密码 | 必填 |
timeout | number | 超时时间 | 非必填,默认10秒 |
返回值 | 类型 | 说明 |
---|---|---|
flag | boolean | 返回true或者false |
err | string | 错误详细信息 |
示例
-- 删除FTP服务器192.168.1.100根目录下的一个 a.txt 文件
flag,err = net.ftp.remove("ftp://192.168.1.100/a.txt", "user", "pass")
if flag then
sys.dialog("文件删除成功")
else
sys.log(err)
sys.dialog("文件删除失败")
end
函数:net.ftp.exists() 文件是否存在
函数说明 : 检查FTP服务器上文件是否存在
函数方法 : net.ftp.exists(远程地址 url, 用户 user, 密码 pass, 超时 timeout?);
返回值 : 是否成功 flag, 文件类型 filetype
参数 | 类型 | 说明 | 必填 |
---|---|---|---|
url | string | 远程文件地址 | 必填 |
user | string | FTP服务器用户名 | 必填 |
pass | string | FTP服务器密码 | 必填 |
timeout | number | 超时时间 | 非必填,默认10秒 |
返回值 | 类型 | 说明 |
---|---|---|
flag | boolean | 返回true或者false |
filetype | string | 返回文件类型(file or dir) |
示例
-- 检查FTP服务器192.168.1.100根目录下的 a.txt 文件是否存在
flag,filetype = net.ftp.exists("ftp://192.168.1.100/a.txt", "user", "pass")
if flag then
sys.dialog("文件存在")
sys.log(filetype)
else
sys.dialog("文件不存在")
end
函数:net.ftp.list() 文件列表
函数说明 : 查询FTP服务器上文件列表
函数方法 : net.ftp.list(远程地址 url, 用户 user, 密码 pass, 超时 timeout?);
返回值 : 文件列表 list
参数 | 类型 | 说明 | 必填 |
---|---|---|---|
url | string | 远程文件地址 | 必填 |
user | string | FTP服务器用户名 | 必填 |
pass | string | FTP服务器密码 | 必填 |
timeout | number | 超时时间 | 非必填,默认10秒 |
返回值 | 类型 | 说明 |
---|---|---|
flag | boolean | 返回true或者false |
list | table | 返回文件列表 |
示例
-- 查询FTP服务器192.168.1.100根目录下的 a 文件夹内的而文件
flag,list = net.ftp.list("ftp://192.168.1.100/a", "user", "pass")
if flag then
sys.log(list)
end