From e89879d3f4e3c673c40042f41ac342cd63a0d9a6 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期一, 29 十二月 2025 17:53:08 +0800
Subject: [PATCH] 0312 请求战报防范网络报错
---
Main/Utility/HttpRequestEx.cs.meta | 11 +++++
Main/System/Settlement/BattleSettlementManager.cs | 7 +++
Main/Utility/HttpRequestEx.cs | 51 +++++++++++++++++++++++++
3 files changed, 68 insertions(+), 1 deletions(-)
diff --git a/Main/System/Settlement/BattleSettlementManager.cs b/Main/System/Settlement/BattleSettlementManager.cs
index 37ccea0..884920b 100644
--- a/Main/System/Settlement/BattleSettlementManager.cs
+++ b/Main/System/Settlement/BattleSettlementManager.cs
@@ -231,7 +231,7 @@
assetVersionUrl = $"{url}/S{serverID}/{date}/{PlayerDatas.Instance.baseData.PlayerID}/{mapID}/{guid}.tfr";
}
Debug.Log($"璇锋眰鎴樻姤: {assetVersionUrl}");
- HttpRequest.Instance.UnityWebRequestTurnFightGet(assetVersionUrl, guid, 3, OnGetTurnFightData);
+ HttpRequestEx.UnityWebRequestTurnFightGet(assetVersionUrl, guid, 3, OnGetTurnFightData);
}
void OnGetTurnFightData(bool _ok, string guid, byte[] _result)
@@ -240,6 +240,11 @@
{
ReadTurnFightInfo(_result);
}
+ else
+ {
+ Debug.Log($"璇锋眰鎴樻姤澶辫触");
+ UIManager.Instance.CloseWindow<MapLoadingWin>();
+ }
}
//鎴樻姤瀛樺偍鐨勬槸B430灏佸寘锛屾墍浠ラ渶瑕佽浆鍙態430灏佸寘
diff --git a/Main/Utility/HttpRequestEx.cs b/Main/Utility/HttpRequestEx.cs
new file mode 100644
index 0000000..2f8eba3
--- /dev/null
+++ b/Main/Utility/HttpRequestEx.cs
@@ -0,0 +1,51 @@
+锘縰sing System;
+using Cysharp.Threading.Tasks;
+using UnityEngine;
+using UnityEngine.Networking;
+
+
+public class HttpRequestEx
+{
+
+
+ //鍥炲悎鎴樻姤
+ public static void UnityWebRequestTurnFightGet(string _url, string guid, int timeout = 5, Action<bool, string, byte[]> _result = null)
+ {
+ GetTurnFightData(_url, guid, timeout, _result).Forget();
+ }
+
+ static async UniTask GetTurnFightData(string remoteURL, string guid, int timeout, Action<bool, string, byte[]> _result = null)
+ {
+
+ UnityWebRequest request = UnityWebRequest.Get(remoteURL);
+ request.timeout = timeout;
+
+ try
+ {
+ await request.SendWebRequest();
+ if (request.isDone)
+ {
+ if (request.result == UnityWebRequest.Result.Success)
+ {
+ _result(true, guid, request.downloadHandler.data);
+ }
+ else
+ {
+ Debug.LogError("GetDataBEx 澶辫触 " + request.result.ToString());
+ _result(false, guid, null);
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ _result(false, guid, null);
+ Debug.LogError($"GetDataBEx 寮傚父 - URL: {remoteURL}, Exception: {ex.Message}");
+ }
+ finally
+ {
+ request.Dispose();
+ }
+ }
+
+
+}
\ No newline at end of file
diff --git a/Main/Utility/HttpRequestEx.cs.meta b/Main/Utility/HttpRequestEx.cs.meta
new file mode 100644
index 0000000..05a512e
--- /dev/null
+++ b/Main/Utility/HttpRequestEx.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: ed6e4a4c512e51645bbbc07aef5a50f8
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
--
Gitblit v1.8.0