CutePet/Assets/Scripts/BeginScene/NetMgr.cs

550 lines
18 KiB
C#
Raw Normal View History

2024-10-25 11:10:04 +08:00
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Text;
using UnityEngine;
using UnityEngine.Networking;
public class NetMgr
{
//<2F><><EFBFBD><EFBFBD>
private static NetMgr instance=new NetMgr();
public static NetMgr Instance => instance;
private string Url= "http://192.168.2.24:8080/";
//<2F><>¼<EFBFBD><C2BC>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
private string lpginPlayerDataUrl = "http://192.168.2.24:8080/register";
//<2F><>ȡһ<C8A1><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
private string playerTempUrl = "http://192.168.2.24:8080/fh";
//<2F>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
private string changePlayerDataUrl = "http://192.168.2.24:8080/change_player_data";
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD>а<EFBFBD><D0B0><EFBFBD><EFBFBD><EFBFBD>
private string rankPostUrl = "http://192.168.2.24:8080/get_user_Scends";
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>а<EFBFBD><D0B0><EFBFBD><EFBFBD><EFBFBD>
private string rankAllGetUrl = "http://192.168.2.24:8080/get_allrank_Scends";
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD>йؿ<D0B9>
private string allLevUrl = "http://192.168.2.24:8080/get_allLev_name";
//<2F><>ȡ<EFBFBD>ؿ<EFBFBD><D8BF>ȳ<EFBFBD><C8B3><EFBFBD>Ϣ
private string levPetInfoUrl = "http://192.168.2.24:8080/getLevDataById";
//<2F><><EFBFBD>ּ<EFBFBD>¼<EFBFBD>ϴ<EFBFBD>
private string goldRealPostUrl = "http://192.168.2.24:8080/uploadGoldRealRecord";
//<2F><><EFBFBD>ּ<EFBFBD>¼<EFBFBD><C2BC>ȡ
private string goldRealGetUrl = "http://192.168.2.24:8080/getGoldRealRecord";
//<2F><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>
private string scoreUploadPostUrl = "http://192.168.2.24:8080/uploadScore";
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ȡ
private string noticeMsgUrl = "http://192.168.2.24:8080/getAnnouncement";
//<2F>ʼ<EFBFBD>
private string mailUrl = "http://192.168.2.24:8080/claimReward";
//<2F><><EFBFBD><EFBFBD>
private string inviteUrl = "http://192.168.2.24:8080/HandleInvite";
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
private string ideaUrl = "http://192.168.2.24:8080/get_idea_msg";
private NetMgr()
{
}
/// <summary>
/// <20><>¼<EFBFBD><C2BC>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
/// <returns></returns>
public IEnumerator PlayerDataPost(LoginMsg msg)
{
string strMsg = JsonMgr.Instance.SaveData(msg,JsonType.JsonUtlity);
using (UnityWebRequest req = new UnityWebRequest(lpginPlayerDataUrl, "POST"))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
byte[] jsonToSend = Encoding.UTF8.GetBytes(strMsg);
req.uploadHandler = new UploadHandlerRaw(jsonToSend);
req.downloadHandler = new DownloadHandlerBuffer();
req.SetRequestHeader("Content-Type", "application/json");
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ
string str = req.downloadHandler.text;
GameDataMgr.Instance.player = JsonMgr.Instance.LoadData<PlayerData>(str);
}
else
{
Debug.LogError($"Error: {req.error}"); // <20><>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
}
}
}
/// <summary>
/// <20><>ȡһ<C8A1><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
/// </summary>
/// <returns></returns>
public IEnumerator PlayerTempGet()
{
using (UnityWebRequest req = UnityWebRequest.Get(playerTempUrl))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
req.SetRequestHeader("Content-Type", "application/json");
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ
string str = req.downloadHandler.text;
GameDataMgr.Instance.playerTemp = JsonMgr.Instance.LoadData<PlayerData>(str);
}
else
{
Debug.LogError($"Error: {req.error}"); // <20><>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
}
}
}
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݸı<C4B1><E4B7A2><EFBFBD><EFBFBD>Ϣ
/// </summary>
/// <returns></returns>
public IEnumerator ChangeDataPost(PlayerData player)
{
string strMsg = JsonMgr.Instance.SaveData(player);
using (UnityWebRequest req = new UnityWebRequest(changePlayerDataUrl, "POST"))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
byte[] jsonToSend = Encoding.UTF8.GetBytes(strMsg);
req.uploadHandler = new UploadHandlerRaw(jsonToSend);
req.downloadHandler = new DownloadHandlerBuffer();
req.SetRequestHeader("Content-Type", "application/json");
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ
string str = req.downloadHandler.text;
GameDataMgr.Instance.player = JsonMgr.Instance.LoadData<PlayerData>(str);
//<2F><><EFBFBD>ұ仯
UIManager.Instance.GetPanel<GamePanel>().UpdateGold();
}
else
{
Debug.LogError($"Error: {req.error}"); // <20><>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
}
}
}
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
/// <returns></returns>
public IEnumerator GoldRealPost(GoldRealMsg msg)
{
string strMsg = JsonMgr.Instance.SaveData(msg);
using (UnityWebRequest req = new UnityWebRequest(goldRealPostUrl, "POST"))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
byte[] jsonToSend = Encoding.UTF8.GetBytes(strMsg);
req.uploadHandler = new UploadHandlerRaw(jsonToSend);
req.downloadHandler = new DownloadHandlerBuffer();
req.SetRequestHeader("Content-Type", "application/json");
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
}
else
{
Debug.LogError($"Error: {req.error}"); // <20><>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
}
}
}
/// <summary>
/// <20><>ȡ<EFBFBD><C8A1><EFBFBD>ּ<EFBFBD>¼
/// </summary>
/// <param name="msg"></param>
/// <returns></returns>
public IEnumerator GoldRealGet(GoldRealMsg msg)
{
string strMsg = JsonMgr.Instance.SaveData(msg);
using (UnityWebRequest req = new UnityWebRequest(goldRealGetUrl, "POST"))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
byte[] jsonToSend = Encoding.UTF8.GetBytes(strMsg);
req.uploadHandler = new UploadHandlerRaw(jsonToSend);
req.downloadHandler = new DownloadHandlerBuffer();
req.SetRequestHeader("Content-Type", "application/json");
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ
string str = req.downloadHandler.text;
GameDataMgr.Instance.goldRealList = JsonMgr.Instance.LoadData<List<GoldRealMsg>>(str);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (GameDataMgr.Instance.goldRealList.Count > 0)
{
UIManager.Instance.GetPanel<GoldRecordPanel>().UpdatePanel(GameDataMgr.Instance.goldRealList);
}
}
else
{
Debug.LogError($"Error: {req.error}"); // <20><>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
}
}
}
/// <summary>
/// <20><>ȡ<EFBFBD><C8A1><EFBFBD>йؿ<D0B9>
/// </summary>
/// <returns></returns>
public IEnumerator AllLevGet()
{
using (UnityWebRequest req = UnityWebRequest.Get(allLevUrl))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ
string str = req.downloadHandler.text;
GameDataMgr.Instance.levList = JsonMgr.Instance.LoadData<List<AllLevData>>(str);
}
else
{
Debug.LogError($"Error: {req.error}"); // <20><>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
}
}
}
/// <summary>
/// <20><>ȡ<EFBFBD>ؿ<EFBFBD><D8BF>ȳ<EFBFBD><C8B3><EFBFBD>Ϣ
/// </summary>
/// <returns></returns>
public IEnumerator LevPetInfoPost(LevRankMsg msg)
{
string strMsg = JsonMgr.Instance.SaveData(msg,JsonType.JsonUtlity);
using (UnityWebRequest req = new UnityWebRequest(levPetInfoUrl, "POST"))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
byte[] jsonToSend = Encoding.UTF8.GetBytes(strMsg);
req.uploadHandler = new UploadHandlerRaw(jsonToSend);
req.downloadHandler = new DownloadHandlerBuffer();
req.SetRequestHeader("Content-Type", "application/json");
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>д<EFBFBD><D0B4><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
string js = req.downloadHandler.text;
GameDataMgr.Instance.levData = JsonMgr.Instance.LoadData<LevData>(js);
GameMgr.Instance.CreatePet();
//<2F><><EFBFBD>عؿ<D8B9>״̬<D7B4><CCAC><EFBFBD><EFBFBD>
if (UIManager.Instance.GetPanel<AllLevStatePanel>()!=null)
{
UIManager.Instance.HidePanel<AllLevStatePanel>();
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>а<EFBFBD><D0B0>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD>
if (UIManager.Instance.GetPanel<AllLevPanel>() != null)
{
UIManager.Instance.HidePanel<AllLevPanel>();
}
//<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1
if (UIManager.Instance.GetPanel<Pass1Panel>() != null)
{
UIManager.Instance.HidePanel<Pass1Panel>();
}
//<2F><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1
if (UIManager.Instance.GetPanel<Pass2Panel>() != null)
{
UIManager.Instance.HidePanel<Pass2Panel>();
}
}
else
{
Debug.Log("Data sent successfully. Response: " + req.downloadHandler.text);
}
}
}
/// <summary>
/// <20><>ȡ<EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD>а<EFBFBD><D0B0><EFBFBD>Ϣ
/// </summary>
/// <returns></returns>
public IEnumerator RankPost(LevRankMsg msg)
{
string strMsg = JsonMgr.Instance.SaveData(msg,JsonType.JsonUtlity);
using (UnityWebRequest req = new UnityWebRequest(rankPostUrl, "POST"))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
byte[] jsonToSend = Encoding.UTF8.GetBytes(strMsg);
req.uploadHandler = new UploadHandlerRaw(jsonToSend);
req.downloadHandler = new DownloadHandlerBuffer();
req.SetRequestHeader("Content-Type", "application/json");
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>д<EFBFBD><D0B4><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
string js = req.downloadHandler.text;
GameDataMgr.Instance.rankData = JsonMgr.Instance.LoadData<Dictionary<string, List<PlayerData>>>(js);
if (GameDataMgr.Instance.rankData==null)
{
GameDataMgr.Instance.rankData=new Dictionary<string, List<PlayerData>>();
GameDataMgr.Instance.rankData.Add("UserList",new List<PlayerData>());
}
UIManager.Instance.GetPanel<RankPanel>().UpdatePanel(GameDataMgr.Instance.rankData["UserList"]);
}
else
{
Debug.Log("Data sent successfully. Response: " + req.downloadHandler.text);
}
}
}
/// <summary>
/// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>а<EFBFBD><D0B0><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
/// <returns></returns>
public IEnumerator RankAllGet()
{
using (UnityWebRequest req = UnityWebRequest.Get(rankAllGetUrl))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>д<EFBFBD><D0B4><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
string js = req.downloadHandler.text;
GameDataMgr.Instance.rankAllData = JsonMgr.Instance.LoadData<Dictionary<string, List<PlayerData>>>(js);
UIManager.Instance.ShowPanel<RankAllPanel>().UpdatePanel(GameDataMgr.Instance.rankAllData["UserList"]);
}
else
{
Debug.Log("Data sent successfully. Response: " + req.downloadHandler.text);
}
}
}
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
/// <returns></returns>
public IEnumerator ScoreUploadPost(ScoreUploadMsg msg,BasePanel pass)
{
string strMsg = JsonMgr.Instance.SaveData(msg,JsonType.JsonUtlity);
using (UnityWebRequest req = new UnityWebRequest(scoreUploadPostUrl, "POST"))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
byte[] jsonToSend = Encoding.UTF8.GetBytes(strMsg);
req.uploadHandler = new UploadHandlerRaw(jsonToSend);
req.downloadHandler = new DownloadHandlerBuffer();
req.SetRequestHeader("Content-Type", "application/json");
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>д<EFBFBD><D0B4><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
string js = req.downloadHandler.text;
BackRankData scoreRank = JsonMgr.Instance.LoadData<BackRankData>(js,JsonType.JsonUtlity);
GamePanel gamePanel = UIManager.Instance.GetPanel<GamePanel>();
if (pass is Pass1Panel)
{
(pass as Pass1Panel).UpdatePanel(gamePanel.levInt, gamePanel.scoreInt, scoreRank.rankInt);
}
else if (pass is Pass2Panel)
{
(pass as Pass2Panel).UpdatePanel(gamePanel.levInt, gamePanel.scoreInt, scoreRank.rankInt);
}
}
else
{
Debug.Log("Data sent successfully. Response: " + req.downloadHandler.text);
}
}
}
/// <summary>
/// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
/// </summary>
/// <returns></returns>
public IEnumerator NoticeMasgGet()
{
using (UnityWebRequest req = UnityWebRequest.Get(noticeMsgUrl))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>д<EFBFBD><D0B4><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
string js = req.downloadHandler.text;
NoticeMsg noticeMsg = JsonMgr.Instance.LoadData<NoticeMsg>(js,JsonType.JsonUtlity);
UIManager.Instance.ShowPanel<PublicPanel>().UpdatePanel(noticeMsg.content);
}
else
{
Debug.Log("Data sent successfully. Response: " + req.downloadHandler.text);
}
}
}
/// <summary>
/// <20><>д<EFBFBD><D0B4><EFBFBD><EFBFBD>
/// </summary>
/// <returns></returns>
public IEnumerator InvitePost(InviteMsg msg)
{
string strMsg = JsonMgr.Instance.SaveData(msg,JsonType.JsonUtlity);
using (UnityWebRequest req = new UnityWebRequest(inviteUrl, "POST"))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
byte[] jsonToSend = Encoding.UTF8.GetBytes(strMsg);
req.uploadHandler = new UploadHandlerRaw(jsonToSend);
req.downloadHandler = new DownloadHandlerBuffer();
req.SetRequestHeader("Content-Type", "application/json");
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>д<EFBFBD><D0B4><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
string js = req.downloadHandler.text;
InviteReturnMsg retMsg = JsonMgr.Instance.LoadData<InviteReturnMsg>(js,JsonType.JsonUtlity);
}
else
{
Debug.Log("Data sent successfully. Response: " + req.downloadHandler.text);
}
}
}
/// <summary>
/// <20>ʼ<EFBFBD>
/// </summary>
/// <returns></returns>
public IEnumerator MailPost(CommonMsg msg)
{
string strMsg = JsonMgr.Instance.SaveData(msg,JsonType.JsonUtlity);
using (UnityWebRequest req = new UnityWebRequest(mailUrl, "POST"))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
byte[] jsonToSend = Encoding.UTF8.GetBytes(strMsg);
req.uploadHandler = new UploadHandlerRaw(jsonToSend);
req.downloadHandler = new DownloadHandlerBuffer();
req.SetRequestHeader("Content-Type", "application/json");
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>д<EFBFBD><D0B4><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
string js = req.downloadHandler.text;
if (js.Contains("\"openId\""))
{
CommonMsg common= JsonMgr.Instance.LoadData<CommonMsg>(js, JsonType.JsonUtlity);
}
else if (js.Contains("\"id\""))
{
MailInfo info = new MailInfo();
info.mailData = JsonMgr.Instance.LoadData<MailData>(js,JsonType.JsonUtlity);
filePath = Path.Combine(Application.persistentDataPath, GameDataMgr.Instance.player.openId);
LoadMailData();
GameDataMgr.Instance.info.Add(info);
SaveMailData(GameDataMgr.Instance.info);
}
}
else
{
Debug.Log("Data sent successfully. Response: " + req.downloadHandler.text);
}
}
}
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
/// <returns></returns>
public IEnumerator IdeaPost(IdeaMsg msg)
{
string strMsg = JsonMgr.Instance.SaveData(msg,JsonType.JsonUtlity);
Debug.Log(strMsg);
using (UnityWebRequest req = new UnityWebRequest(ideaUrl, "POST"))
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󲢵ȴ<F3B2A2B5><C8B4><EFBFBD>Ӧ
byte[] jsonToSend = Encoding.UTF8.GetBytes(strMsg);
req.uploadHandler = new UploadHandlerRaw(jsonToSend);
req.downloadHandler = new DownloadHandlerBuffer();
req.SetRequestHeader("Content-Type", "application/json");
yield return req.SendWebRequest();
// <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>д<EFBFBD><D0B4><EFBFBD>
if (req.result == UnityWebRequest.Result.Success)
{
}
else
{
Debug.Log("Data sent successfully. Response: " + req.downloadHandler.text);
}
}
}
private string filePath;
// <20><><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD><EFBFBD><EFBFBD>
public void SaveMailData(List<MailInfo> info)
{
string json = JsonMgr.Instance.SaveData(info);
File.WriteAllText(filePath, json);
}
// <20><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>
private void LoadMailData()
{
if (File.Exists(filePath))
{
string json = File.ReadAllText(filePath);
GameDataMgr.Instance.info = JsonMgr.Instance.LoadData<List<MailInfo>>(json);
if (GameDataMgr.Instance.info == null)
{
GameDataMgr.Instance.info = new List<MailInfo>();
}
}
else
{
GameDataMgr.Instance.info = new List<MailInfo>();
}
}
}