Пример #1
0
    public void SendMsgWithCallBack(Packet packet, HttpCallbackDelegate callback, bool isCheckHead = true)
    {
        if (null == www)
        {
            return;
        }

        MemoryStream memStream = new MemoryStream();

        ProtoBuf.Serializer.Serialize <Packet>(memStream, packet);
        byte[]          data      = memStream.ToArray();
        string          dataStr   = GlobalFunction.ToHexString(data); //ToHex
        ALHttpParamForm paramForm = new ALHttpParamForm();

        paramForm.AddParam("data", dataStr);
        if (isCheckHead)
        {
            if (headData != null)
            {
                Packet headPacket = new Packet();
                headPacket.cmd                       = Packet.EnmCmdType.CMD_CL_CHECKHEAD;
                headPacket.packCLCheckHead           = new PacketCLCheckHead();
                headPacket.packCLCheckHead.accountid = headData.accountid;
                headPacket.packCLCheckHead.md5       = headData.md5;
                MemoryStream headStream = new MemoryStream();
                ProtoBuf.Serializer.Serialize <Packet>(headStream, headPacket);
                byte[] headByte = headStream.ToArray();
                string headStr  = GlobalFunction.ToHexString(headByte);
                paramForm.AddParam("head", headStr);
            }
        }
        www.HTTPRequest(szUrl, ref paramForm, OnReceive_Msg, callback, false);
    }
Пример #2
0
    /// <summary>
    /// 用WWW进行http请求
    /// </summary>
    /// <param name="_szUrl"></param>
    /// <param name="_ParamForm"></param>
    /// <param name="_delegateAck"></param>
    /// <param name="_bPost"></param>
    public bool HTTPRequest(string _szUrl,
                            ref ALHttpParamForm _ParamForm,
                            HTTPReqAckDelegate _delegateAck,
                            HttpCallbackDelegate _httpCallback,
                            bool _bPost = true)
    {
        ALWWWHTTPRequest request = new ALWWWHTTPRequest();

        request.m_dwErrorNum   = 0;
        request.m_eOptState    = EHTTPOptState.eOptState_Ready;
        request.m_szRequestUrl = _szUrl;
        request.m_dwRequestId  = ++m_dwRequestId;
        request.m_Param        = new ALHttpParamForm();
        request.m_Param.CloneParam(ref _ParamForm);
        request.m_ReqDelegate = _delegateAck;
        request.m_ReqCallback = _httpCallback;
        request.m_bPost       = _bPost;

        if (m_bUpdating)
        {
            m_dicRequestCache.Add(request.m_dwRequestId, request);
        }
        else
        {
            m_dicRequest.Add(request.m_dwRequestId, request);
        }
        return(true);
    }
Пример #3
0
    public void CloneParam(ref ALHttpParamForm _Param)
    {
        if (_Param == null)
        {
            Debug.LogError("##CloneParam _Param == null");
            return;
        }

        for (int i = 0; i < _Param.m_lstParam.Count; ++i)
        {
            m_lstParam.Add(_Param.m_lstParam[i]);
        }
    }