unity 使用UnityWebRequest从服务器下载

csharp 复制代码
 IEnumerator WinFile(string url)
    {
        //连接url
        using(UnityWebRequest uwr = UnityWebRequest.Get(url))
        {
            //等待下载
            yield return uwr.SendWebRequest();
            //判断是否连接失败以及是否返回一个错误状态码
            if (uwr.result == UnityWebRequest.Result.ConnectionError || uwr.result == UnityWebRequest.Result.ProtocolError)
            {
                Debug.LogError(uwr.error);
            }
            else
            {
                // 下载成功,获取数据  
                byte[] data = uwr.downloadHandler.data;

                //获取路径txt里面的服务器路径
                string str = System.Text.Encoding.UTF8.GetString(data);
            }
        }
    }

UnityWebRequest.Result是个枚举
InProgress

含义:表示请求尚未完成,即请求正在处理中,还没有收到服务器的响应。

说明:这个状态是请求发出后,到收到服务器响应之前的中间状态。
Success

含义:表示请求成功完成,并且已经收到了服务器的有效响应。

说明:当请求成功,且服务器返回了预期的数据或结果时,该枚举值会被设置。
ConnectionError

含义:表示请求在尝试与服务器建立连接时发生了错误。

说明:这可能是由于网络问题、服务器不可达、DNS解析失败等原因导致的。
ProtocolError

含义:表示请求已经成功发送到服务器,但服务器返回的响应违反了HTTP协议规范,因此被视为无效响应。

说明:这可能是由于服务器配置错误、请求格式不正确或服务器内部错误等原因导致的。
DataProcessingError

含义:表示请求成功收到服务器的响应,但在处理响应数据时发生了错误。

说明:这可能是由于响应数据格式不正确、数据损坏或解析响应数据的代码存在错误等原因导致的。

相关推荐
凡间客36 分钟前
Linux防火墙-Firewalld
linux·运维·服务器
Justin_193 小时前
Linux-Shell编程之sed和awk
linux·运维·服务器
九章云极AladdinEdu4 小时前
绿色算力技术栈:AI集群功耗建模与动态调频系统
人工智能·pytorch·深度学习·unity·游戏引擎·transformer·gpu算力
半桔4 小时前
【Linux手册】消息队列从原理到模式:底层逻辑、接口实战与责任链模式的设计艺术
java·linux·运维·服务器
华纳云IDC服务商4 小时前
Linux服务器的系统安全强化超详细教程
linux·服务器·系统安全
衍余未了4 小时前
k8s镜像推送到阿里云,使用ctr推送镜像到阿里云
linux·运维·服务器
Forever_Hopeful4 小时前
【C 语言生成指定范围随机数(整数 + 小数):原理、实现与避坑指南】
服务器·c语言·开发语言
yiqiqukanhaiba5 小时前
Linux编程笔记1-概念&数据类型&输入输出
linux·运维·服务器
乌萨奇也要立志学C++5 小时前
【Linux】进程概念(一):从冯诺依曼体系到 PCB 的进程核心解析
linux·运维·服务器
游九尘5 小时前
服务器都是用的iis, 前端部署后报跨域,不是用同一个服务器 是前端项目的服务器做Nginx转发,还是后端项目的服务器做Nginx转发?
服务器·前端·nginx