SimplyUploadManager.cs 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.Events;
  5. using UnityEngine.Networking;
  6. using System;
  7. using Newtonsoft.Json;
  8. public class SimplyUploadManager : MonoBehaviour
  9. {
  10. public static SimplyUploadManager Instance;
  11. private const string uploadURL = @"https://open.skyelook.com/api/device/saveScore";
  12. // ==================================================
  13. private void Awake()
  14. {
  15. Instance = this;
  16. }
  17. // ==================================================
  18. private UploadData uploadData;
  19. public void SetUploadData(UploadData value)
  20. {
  21. uploadData = value;
  22. return;
  23. }
  24. // ==================================================
  25. public void StartUploadData() => UploadDataAction();
  26. private IEnumerator UploadDataAction()
  27. {
  28. WWWForm wwwForm = new WWWForm();
  29. wwwForm.AddField("uuid", uploadData.uuid);
  30. wwwForm.AddField("clock", uploadData.clock);
  31. wwwForm.AddField("start_code", uploadData.start_code);
  32. wwwForm.AddField("game_score", uploadData.game_score);
  33. using (UnityWebRequest www = UnityWebRequest.Post(uploadURL, wwwForm))
  34. {
  35. www.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  36. www.downloadHandler = new DownloadHandlerBuffer();
  37. yield return www.SendWebRequest();
  38. if (www.result != UnityWebRequest.Result.Success)
  39. {
  40. Debug.Log($"{www.error}...<color=red>[ER]</color>");
  41. yield break;
  42. }
  43. else
  44. {
  45. // StatusData = JsonConvert.DeserializeObject<UploadData>(www.downloadHandler.text);
  46. Debug.Log($"{www.downloadHandler.text}...<color=green>[OK]</color>");
  47. }
  48. }
  49. yield break;
  50. }
  51. [Serializable]
  52. public class UploadData
  53. {
  54. public string uuid;
  55. public string clock;
  56. public string start_code;
  57. public string game_score;
  58. }
  59. }