CCHttpRequest的用法很簡單

1、Get方法,設置URL,響應事件:

[html]

  1. --[[  

  2.     設置ulr:"http://blog.csdn.net/longolder"  

  3.     監聽:self:onResponseGet(event)  

  4.     方法:GET  

  5. --]]  

  6. local url = "http://blog.csdn.net/longolder"  

  7. local request = network.createHTTPRequest(function(event)  

  8.     self:onResponseGet(event)  

  9. end, url, "GET")  

  10. request:setTimeout(30)  

  11. request:start()  

--[[		設置ulr:"http://blog.csdn.net/longolder"		監聽:self:onResponseGet(event)		方法:GET	--]]	local url = "http://blog.csdn.net/longolder"	local request = network.createHTTPRequest(function(event)		self:onResponseGet(event)	end, url, "GET")	request:setTimeout(30)	request:start()

默認超時時間為10s,這裡調用setTimeout設置30s超時

2、POST方法,與GET方法相似,只不過要另外添加數據:

[html]

  1. -- 調用addPOSTValue向Form中添加鍵值對例如:key:value  

  2. for key, value in pairs(dataInfo) do  

  3.     request:addPOSTValue(key, value)  

  4. end  

-- 調用addPOSTValue向Form中添加鍵值對例如:key:value	for key, value in pairs(dataInfo) do		request:addPOSTValue(key, value)	end

dataInfo是一個保存要發送數據的table集合

下面是回調方法:

[html]

  1. function HttpRequestTest:onResponseGet(event)  

  2.     local request = event.request  

  3.     if event.name ~= "completed" then -- 當為completed表示正常結束此事件  

  4.         print("request:getErrorCode(), request:getErrorMessage() ", request:getErrorCode(), request:getErrorMessage())  

  5.         return   

  6.     end  

  7.     local code = request:getResponseStatusCode()  

  8.     if code ~= 200 then -- 成功  

  9.         print("code ", code)  

  10.         return   

  11.     end  

  12.     local strResponse = string.trim(request:getResponseString())  

  13.     print(strResponse)  

  14. end  

function HttpRequestTest:onResponseGet(event)	local request = event.request	if event.name ~= "completed" then -- 當為completed表示正常結束此事件		print("request:getErrorCode(), request:getErrorMessage() ", request:getErrorCode(), request:getErrorMessage())		return 	end	local code = request:getResponseStatusCode()	if code ~= 200 then -- 成功		print("code ", code)		return 	end	local strResponse = string.trim(request:getResponseString())	print(strResponse)end

常用的狀態碼有以下幾個值:

200 - 服務器成功返回網頁

404 - 請求的網頁不存在

503 - 服務器暫時不可用