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

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

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

相关推荐
发量惊人的中年网工9 分钟前
服务器托管一个机柜一年多少钱?2026年9月最新机柜租用价格参考
运维·服务器·网络
fundoit11 分钟前
资源服务器如何对 JWT 进行验签
java·运维·服务器·spring boot·php·oauth2
云贝贝贝15 分钟前
【无标题】TDSQL 分片键怎么选?选错等于数据倾斜加跨分片慢查询
运维·服务器·数据库·腾讯云
hzxpaipai23 分钟前
AI把网站页面做出来了,谁来负责后台、服务器和正式上线?
运维·服务器·人工智能
遇印记43 分钟前
数据通信初步
运维·服务器·网络·windows·学习
学linux的QQ蛋44 分钟前
图解 Linux 驱动编译进内核的完整工作流程
linux·运维·服务器
print_Hyon1 小时前
【ENSP】DHCP 基础实验(路由器作为 DHCP 服务器,接口地址池模式)
运维·服务器·智能路由器
程序员-Benothing1 小时前
正则表达式详解:BRE、ERE、PCRE语法与实战案例
linux·运维·服务器
软件架构师-叶秋1 小时前
V853方案之ubuntu开发环境搭建
linux·运维·服务器·全志·v853
不会就选b12 小时前
Linux之TCP理论<1>
linux·运维·服务器