init
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
HttpClient = {}
|
||||
|
||||
function HttpClient:Start()
|
||||
if nil == self.requester then
|
||||
self.requester = HttpRequester:create()
|
||||
self.requester:retain()
|
||||
self.requester:setCallback(LUA_CALLBACK(self, self.RequestCallback))
|
||||
self.request_list = {}
|
||||
end
|
||||
end
|
||||
|
||||
function HttpClient:Update(dt)
|
||||
end
|
||||
|
||||
function HttpClient:Stop()
|
||||
if nil ~= self.requester then
|
||||
self.requester:release()
|
||||
self.requester = nil
|
||||
self.request_list = nil
|
||||
end
|
||||
end
|
||||
|
||||
-- 请求
|
||||
function HttpClient:Request(url, arg, callback)
|
||||
if nil == self.requester then return end
|
||||
|
||||
local key = self.requester:addRequest(url, arg, 0)
|
||||
if key < 0 then
|
||||
print("HttpRequest fail url:" .. url)
|
||||
return false
|
||||
end
|
||||
|
||||
self.request_list[key] = callback
|
||||
return true
|
||||
end
|
||||
|
||||
function HttpClient:RequestCallback(url, arg, data, size, key)
|
||||
if nil == self.requester then return end
|
||||
|
||||
local callback = self.request_list[key]
|
||||
if nil ~= callback then
|
||||
callback(url, arg, data, size)
|
||||
self.request_list[key] = nil
|
||||
end
|
||||
end
|
||||
|
||||
function HttpClient:UrlEncode(str)
|
||||
if (str) then
|
||||
str = string.gsub (str, "\n", "\r\n")
|
||||
str = string.gsub (str, "([^%w %-%_%.%~])",
|
||||
function (c) return string.format ("%%%02X", string.byte(c)) end)
|
||||
str = string.gsub (str, " ", "+")
|
||||
end
|
||||
return str
|
||||
end
|
||||
|
||||
HttpClient:Start()
|
||||
Reference in New Issue
Block a user