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(); } }