public StartTaskStatus Start(WebRequestTask task) { if (task == null) { throw new LufyException("Task is invalid."); } m_Task = task; m_Task.Status = WebRequestTaskStatus.Doing; if (m_EventManager != null) { m_EventManager.Fire(this, WebRequestStartEventArgs.Create(m_Task.SerialId, m_Task.WebRequestUri, m_Task.UserData)); } byte[] postData = m_Task.GetPostData(); if (postData == null) { m_UnityWebRequest = UnityWebRequest.Get(m_Task.WebRequestUri); m_UnityWebRequest.SendWebRequest(); } else { m_UnityWebRequest = UnityWebRequest.Post(m_Task.WebRequestUri, Utility.Converter.GetString(postData)); m_UnityWebRequest.SendWebRequest(); } m_WaitTime = 0f; return(StartTaskStatus.CanResume); }
/// <summary> /// 创建 Web 请求开始事件。 /// </summary> /// <param name="serialId">Web 请求任务的序列编号。</param> /// <param name="webRequestUri">Web 请求地址。</param> /// <param name="userData">用户自定义数据。</param> /// <returns>创建的 Web 请求开始事件。</returns> public static WebRequestStartEventArgs Create(int serialId, string webRequestUri, object userData) { WebRequestStartEventArgs webRequestStartEventArgs = ReferencePool.Acquire <WebRequestStartEventArgs>(); webRequestStartEventArgs.SerialId = serialId; webRequestStartEventArgs.WebRequestUri = webRequestUri; webRequestStartEventArgs.UserData = userData; return(webRequestStartEventArgs); }