cocos2dx lua http请求获取网络数据:
- local xhr = cc.XMLHttpRequest:new() --创建一个请求
- xhr.responseType = cc.XMLHTTPREQUEST_RESPONSE_STRING --设置返回数据格式为字符串
- local req = "http://www.XXX” --请求地址
- xhr:open("GET", req) --设置请求方式 GET 或者 POST
- local function onReadyStateChange() --请求响应函数
- if xhr.readyState == 4 and (xhr.status >= 200 and xhr.status < 207) then —请求状态已完并且请求已成功
- local statusString = "Http Status Code:"..xhr.statusText
- print("请求返回状态码"..statusString)
- local s = xhr.response —获得返回的内容
- print(“返回的数据")
- end
- end
- xhr:registerScriptHandler(onReadyStateChange) --注册请求响应函数
- xhr:send() —最后发送请求
注:
请求状态 xhr.readyState == 4
|
数据返回格式 xhr.responseType
cc.XMLHTTPREQUEST_RESPONSE_STRING = 0 -- 返回字符串类型
cc.XMLHTTPREQUEST_RESPONSE_ARRAY_BUFFER = 1 -- 返回字节数组类型
cc.XMLHTTPREQUEST_RESPONSE_BLOB = 2 -- 返回二进制大对象类型
cc.XMLHTTPREQUEST_RESPONSE_DOCUMENT = 3 -- 返回文档对象类型
cc.XMLHTTPREQUEST_RESPONSE_BLOB = 2 -- 返回二进制大对象类型
cc.XMLHTTPREQUEST_RESPONSE_DOCUMENT = 3 -- 返回文档对象类型
cc.XMLHTTPREQUEST_RESPONSE_JSON = 4 -- 返回JSON数据类型