IEnumerator OnLoadFile(string url, DownloadProgress downloadProgress) { UnityWebRequest uwr = new UnityWebRequest(url, UnityWebRequest.kHttpVerbGET); MyDownloadHandler myDownloadHandler = new MyDownloadHandler(preAllocatedBuffer, downloadProgress); uwr.downloadHandler = myDownloadHandler; yield return(uwr.SendWebRequest()); if (uwr.isNetworkError || uwr.isHttpError) { GLog.Error(uwr.error); if (downloadProgress != null) { downloadProgress(0, null, false); } } }
// 自行处理服务器返回的数据 todo 待完善 private IEnumerator MyDownLoad(string url) { using (UnityWebRequest request = new UnityWebRequest(url)) { byte[] bytes = new byte[1024]; MyDownloadHandler handler = new MyDownloadHandler(bytes); request.downloadHandler = handler; yield return(request.SendWebRequest()); if (request.isNetworkError || request.isHttpError) { Debug.LogError(request.error); } else { // 结合另一个脚本 file://UnityWebRequest/低级Api/MyDownloadHandler } } }