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
含义:表示请求成功收到服务器的响应,但在处理响应数据时发生了错误。
说明:这可能是由于响应数据格式不正确、数据损坏或解析响应数据的代码存在错误等原因导致的。