网络访问
更新时间:2021-06-17
HTTPS
此类封装lua网络访问相关操作
Public methods | |
---|---|
HTTPS | HTTPSDemo() Demo. |
Connection | on_receive_answer(function func) 设置请求的结果回调,返回服务器的完整数据 |
Connection | on_send_error(function func) 设置请求的状态回调, 仅当请求出现错误时响应。如请求参数不对或者无网络连接 |
Connection | open_connection() 开启一个链接 |
Connection | send() 发送请求 |
Connection | set_content(string content) 设置请求的内容 |
Connection | set_url(string url) 设置请求的url地址 |
HTTPS HTTPSDemo ()
dem示例
sample:
local conn1 = HTTPS:open_connection()
:set_url("https://www.baidu.com")
:set_content("key = 1"):send()
conn1:on_send_error( function(status)
io.write("on_send_error:"..status)
end)
conn1:on_receive_answer( function(data)
io.write("on_receive_answer:"..data)
end)
回调函数也可以同时设置
local conn2 = HTTPS:open_connection()
:set_url("https://www.baidu.com")
:set_content("key = 2")
:on_send_error( function(status)
io.write("on_send_error:"..status)
end)
:on_receive_answer( function(data)
io.write("on_receive_answer:"..data)
end)
:send()
注意: 在发送带有json串参数的get请求时,IOS需要对json串做urlencode处理后才能正确识别。
规避方案: IOS端请求改为post,android端维持原样使用get,避开给json参数做urlencode的步骤。(目前case内可判断机型为ios或安卓平台)
on_receive_answer
version 25
Connection on_receive_answer (function func)
设置请求的结果回调,返回服务器的完整数据
Parameters
- func | function : 设置一个处理结果的函数
Returns
- Connection : self
sample:
local conn = HTTPS:open_connection()
:set_url("https://www.baidu.com")
:set_content("key = 1")
:send()
conn:on_receive_answer( function(data)
—-处理data即可
end)
on_send_error
version 25
Connection on_send_error (function func)
设置请求的状态回调。仅当请求出现错误时响应,如请求参数不对或者无网络连接
Parameters
- func | function : 设置一个处理状态结果的函数。function会返回状态:status==1表示无网络连接, status==2表示参数不对
Returns
- Connection : self
sample:
local conn = HTTPS:open_connection()
:set_url("https://www.baidu.com")
:set_content("key = 1")
:send()
conn:on_send_error( function(status)
if (status == 1) then
-—表示无网络连接
end
if (status == 2) then
—-表示参数不对
end
end)
open_connection
version 25
Connection open_connection ()
开启一个链接
Returns
- Connection : self
sample:
local conn = HTTPS:open_connection()
send
version 25
Connection send ()
发送请求
Returns
- Connection : self
sample:
local conn = HTTPS:open_connection()
:set_url("https://www.baidu.com")
:set_content("key = 1")
:send()
set_content
version 25
Connection set_content (string content)
设置请求的内容
Parameters
- content | string : 请求的内容
Returns
- Connection : self
sample:
local conn = HTTPS:open_connection()
:set_url("https://www.baidu.com")
:set_content("key = 1")
set_url
version 25
Connection set_url (string url)
设置请求的url地址
Parameters
- url | string : 请求的url地址。注意:仅支持HTTPS类型访问
Returns
- Connection : self
sample:
local conn = HTTPS:open_connection():set_url("https://www.baidu.com")