本地优化

This commit is contained in:
2026-06-03 22:05:03 +08:00
parent a6509ea9ee
commit fea67869f2
18 changed files with 996 additions and 65 deletions

View File

@@ -348,16 +348,13 @@ namespace Stary.Evo
/// <param name="url">获取Token值的服务URL地址很重要</param>
/// <param name="postData">传入请求的参数此处参数为JOSN格式</param>
/// <returns></returns>
public static async Task<ResultMessageEntity> Post(string url, string postData)
public static async Task<string> Post(string url, string postData)
{
try
{
await GetCertificateData();
using var webRequest = new UnityWebRequest(url, UnityWebRequest.kHttpVerbPOST);
// #if UNITY_2021_3_OR_NEWER
// using (UnityWebRequest webRequest = UnityWebRequest.PostWwwForm(url, postData)) //第二种写法此行注释
// #else
// using (UnityWebRequest webRequest = UnityWebRequest.PostWwwForm(url, postData)) //第二种写法此行注释
// #endif
webRequest.downloadHandler = new DownloadHandlerBuffer();
var postBytes = Encoding.UTF8.GetBytes(postData);
webRequest.uploadHandler = new UploadHandlerRaw(postBytes);
@@ -367,6 +364,7 @@ namespace Stary.Evo
webRequest.disposeDownloadHandlerOnDispose = true;
webRequest.disposeCertificateHandlerOnDispose = true;
webRequest.timeout = 30;
webRequest.certificateHandler = new SelfSignedCertHandler(certificateData);
await webRequest.SendWebRequest();
webRequest.uploadHandler?.Dispose();
// 更新错误检查方式
@@ -374,28 +372,16 @@ namespace Stary.Evo
webRequest.result == UnityWebRequest.Result.ProtocolError)
{
Debug.LogError(webRequest.error);
return new ResultMessageEntity
{
code = 5001,
message = webRequest.error
};
return webRequest.error;
}
var resultMessageEntity =
JsonConvert.DeserializeObject<ResultMessageEntity>(webRequest.downloadHandler.text);
if (resultMessageEntity.code != 200) Debug.LogError(resultMessageEntity.message);
return resultMessageEntity;
return webRequest.downloadHandler.text;
}
catch (Exception e)
{
Debug.LogError("UnityEvo:WebRequestSystem.Post" + e.Message);
return new ResultMessageEntity
{
code = 5001,
message = e.Message
};
return e.Message;
}
}
@@ -408,10 +394,11 @@ namespace Stary.Evo
/// <param name="url">请求数据的URL地址</param>
/// <param name="path">请求数据的路径</param>
/// <returns></returns>
public static async Task<ResultMessageEntity> Delete(string url, string path)
public static async Task<string> Delete(string url, string path)
{
try
{
await GetCertificateData();
// 修复URL拼接
var fullUrl = url.TrimEnd('/') + "/" + path.TrimStart('/');
using var webRequest = new UnityWebRequest(fullUrl, UnityWebRequest.kHttpVerbDELETE);
@@ -420,6 +407,7 @@ namespace Stary.Evo
webRequest.SetRequestHeader("Authorization", authorization); // 修正请求头名称规范
webRequest.timeout = 20;
webRequest.certificateHandler = new SelfSignedCertHandler(certificateData);
await webRequest.SendWebRequest();
// 增强错误处理
@@ -431,36 +419,20 @@ namespace Stary.Evo
$"Response: {webRequest.downloadHandler.text}";
Debug.LogError(errorMsg);
return new ResultMessageEntity
{
code = 5001,
message = errorMsg
};
return errorMsg;
}
// 修复空响应处理
var responseText = webRequest.downloadHandler.text;
if (string.IsNullOrEmpty(responseText))
return new ResultMessageEntity
{
code = 200,
message = "删除成功"
};
var resultMessageEntity =
JsonConvert.DeserializeObject<ResultMessageEntity>(webRequest.downloadHandler.text);
if (resultMessageEntity.code != 200) Debug.LogError(resultMessageEntity.message);
return resultMessageEntity;
return responseText;
}
catch (Exception e)
{
Debug.LogError("UnityEvo:WebRequestSystem.Get" + e.Message);
return new ResultMessageEntity
{
code = 5001,
message = e.Message
};
return e.Message;
}
}
@@ -568,6 +540,5 @@ namespace Stary.Evo
else
Debug.Log($"上传成功: {request.downloadHandler.text}");
}
}
}