zoukankan      html  css  js  c++  java
  • cocos2d-x lua 使用http(下载图片, POST JSON)

    cocos2d-x lua 使用http(下载图片, POST JSON)

    version: cocos2d-x 3.6

    1.使用http post json与服务器交互

    require("src/cocos/cocos2d/json")
    require("src/cocos/network/NetworkConstants")
    
    -- post json
    local xhr = cc.XMLHttpRequest:new()
    xhr.responseType = cc.XMLHTTPREQUEST_RESPONSE_JSON
    xhr:setRequestHeader("Content-Type", "application/json")
    xhr:open("POST", "www.baidu.com")
    local function loginCallback()
    	print("xhr.readyState is:", xhr.readyState, "xhr.status is: ", xhr.status)
        if xhr.readyState == 4 and (xhr.status >= 200 and xhr.status < 207) then
            local response = xhr.response
            local output = json.decode(response)
            -- print
            table.foreach(output, function(i, v) print (i, v) end)
            
    		-- success ...
        else
            -- fail ...
        end
    end
    xhr:registerScriptHandler(loginCallback)
    xhr:send(sendJson)
    

    2.使用http get下载网络图片

    -- get (image)
    
    pSprite:retain()  -- a sprite
    local xhr = cc.XMLHttpRequest:new()
    
    -- tag
    xhr._urlFileName = urlFileName
    xhr._urlSprite = pSprite
    
    xhr.responseType = cc.XMLHTTPREQUEST_RESPONSE_STRING
    xhr:open("GET", "http://cocos2d-x.org/s/images/img-cocos2dx.jpg")
    local function onDownloadImage()
    	print("xhr.readyState is:", xhr.readyState, "xhr.status is: ", xhr.status)
        if xhr.readyState == 4 and (xhr.status >= 200 and xhr.status < 207) then
            local fileData = xhr.response
            local fullFileName = cc.FileUtils:getInstance():getWritablePath() .. "/" .. xhr._urlFileName
            local file = io.open(fullFileName,"wb")
            file:write(fileData)
            file:close()
            local texture2d = cc.Director:getInstance():getTextureCache():addImage(fullFileName)
            local pSprite = xhr._urlSprite
            if texture2d then
                pSprite:setTexture(texture2d)
            end
            pSprite:release() -- be careful
        end
    end
    xhr:registerScriptHandler(onDownloadImage)
    xhr:send()
    
    • 在使用xhr时,可以添加自己的数据(如:xhr._urlSprite = pSprite),存放用户的临时数据,方便返回时使用。
  • 相关阅读:
    tensor的维度变换
    交叉熵损失函数
    全连接层、softmax的loss
    SoftMax函数
    pytorch实现mnist识别实战
    pytorch索引与切片
    Pytorch中的torch.gather函数
    softmax函数
    Separate to Adapt Open Set Domain Adaptation via Progressive Separation论文总结
    Separate to Adapt: Open Set Domain Adaptation via Progressive Separation论文笔记
  • 原文地址:https://www.cnblogs.com/songcf/p/4556780.html
Copyright © 2011-2022 走看看