This commit is contained in:
2025-09-23 18:28:06 +08:00
parent 987e89b3fc
commit 4486e7dd82
11 changed files with 273 additions and 325 deletions

View File

@@ -332,9 +332,9 @@ namespace Stary.Evo
/// GET请求数据
/// </summary>
/// <param name="url">请求数据的URL地址</param>
/// <param name="token">token验证的参数此处为authorization</param>
/// <param name="path">请求数据的路径</param>
/// <returns></returns>
public static async Task<ResultMessageEntity> Get(string url)
public static async Task<ResultMessageEntity> Get(string url,string path)
{
if (!GetTokenState())
{
@@ -348,7 +348,8 @@ namespace Stary.Evo
try
{
using UnityWebRequest webRequest = UnityWebRequest.Get(url);
string fullUrl = url.TrimEnd('/') + "/" + path.TrimStart('/');
using UnityWebRequest webRequest = UnityWebRequest.Get(fullUrl);
webRequest.downloadHandler = new DownloadHandlerBuffer();
if (authorization != null)
webRequest.SetRequestHeader("Authorization", authorization); // 修正请求头名称规范
@@ -392,7 +393,80 @@ namespace Stary.Evo
}
}
/// <summary>
/// Delete请求数据
/// </summary>
/// <param name="url">请求数据的URL地址</param>
/// <param name="path">请求数据的路径</param>
/// <returns></returns>
public static async Task<ResultMessageEntity> Delete(string url,string path)
{
if (!GetTokenState())
{
Debug.LogError("用户未登录,请先登录");
return new ResultMessageEntity()
{
code = 2001,
message = "用户未登录,请先登录"
};
}
try
{
// 修复URL拼接
string fullUrl = url.TrimEnd('/') + "/" + path.TrimStart('/');
using UnityWebRequest webRequest = UnityWebRequest.Delete(fullUrl);
webRequest.downloadHandler = new DownloadHandlerBuffer();
if (authorization != null)
webRequest.SetRequestHeader("Authorization", authorization); // 修正请求头名称规范
webRequest.timeout = 20;
await webRequest.SendWebRequest();
// 增强错误处理
if (webRequest.result != UnityWebRequest.Result.Success)
{
var errorMsg = $"HTTP {webRequest.responseCode}\n" +
$"URL: {url}\n" +
$"Error: {webRequest.error}\n" +
$"Response: {webRequest.downloadHandler.text}";
Debug.LogError(errorMsg);
return new ResultMessageEntity()
{
code = 5001,
message = errorMsg
};
}
// 修复空响应处理
string responseText = webRequest.downloadHandler.text;
if (string.IsNullOrEmpty(responseText))
{
return new ResultMessageEntity()
{
code = 200,
message = "删除成功"
};
}
ResultMessageEntity resultMessageEntity =
JsonConvert.DeserializeObject<ResultMessageEntity>(webRequest.downloadHandler.text);
if (resultMessageEntity.code != 200)
{
Debug.LogError(resultMessageEntity.message);
}
return resultMessageEntity;
}
catch (Exception e)
{
Debug.LogError($"UnityEvo:WebRequestSystem.Get" + e.Message);
return new ResultMessageEntity()
{
code = 5001,
message = e.Message
};
}
}
public static bool GetTokenState()
{
if (string.IsNullOrEmpty(authorization))