Beispiel #1
0
        public static IEnumerator ReadFile([NotNull] string url, [NotNull] AsyncResult result)
        {
            if (url.StartsWith("https://") || url.StartsWith("http://"))
            {
                url = UrlNoCache(url);
            }
            DownloadHandlerBuffer downloadHandler = new DownloadHandlerBuffer();
            UnityWebRequest       val             = new UnityWebRequest(url);

            val.set_disposeDownloadHandlerOnDispose(true);
            val.set_downloadHandler(downloadHandler);
            UnityWebRequest request = val;
            UnityWebRequest val2    = request;

            try
            {
                request.SendWebRequest();
                while (!request.get_isDone())
                {
                    yield return(null);
                }
                if (request.get_isHttpError() || request.get_isNetworkError())
                {
                    result.exception = new Exception(request.get_responseCode(), request.get_error());
                }
                else
                {
                    result.value = downloadHandler.get_text();
                }
            }
            finally
            {
                ((IDisposable)val2)?.Dispose();
            }
        }