URLRequestData.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. using LitJson;
  2. using UnityEngine;
  3. using System.Collections;
  4. using System.Collections.Generic;
  5. public class URLRequestData
  6. {
  7. private bool encrypt;
  8. private List<KeyValuePair<string, object>> data;
  9. public URLRequestData(bool encrypt=false)
  10. {
  11. this.encrypt = encrypt;
  12. data = new List<KeyValuePair<string, object>>();
  13. }
  14. public void Add(string key, object value)
  15. {
  16. data.Add(new KeyValuePair<string, object>(key, value));
  17. }
  18. public bool HasData()
  19. {
  20. return data.Count > 0;
  21. }
  22. public string GetDataString()
  23. {
  24. string info = "";
  25. string result = "";
  26. if(encrypt)
  27. {
  28. JsonData json = JsonMapper.ToObject("{}");
  29. for(int i=0; i<data.Count; i++)
  30. {
  31. KeyValuePair<string, object> kvp = data[i];
  32. info += "["+kvp.Key+" : "+kvp.Value+"] ";
  33. json[kvp.Key] = kvp.Value.ToString();
  34. }
  35. result = "v="+DecryptionUtil.Encryption(json.ToJson());
  36. }
  37. else
  38. {
  39. string[] strArr = new string[data.Count];
  40. for(int i=0; i<data.Count; i++)
  41. {
  42. KeyValuePair<string, object> kvp = data[i];
  43. info += "["+kvp.Key+" : "+kvp.Value+"] ";
  44. strArr[i] = kvp.Key+"="+kvp.Value;
  45. }
  46. result = string.Join("&", strArr);
  47. }
  48. Debuger.Log("Url data : "+info);
  49. return result;
  50. }
  51. public WWWForm GetDataForm()
  52. {
  53. string info = "";
  54. WWWForm form = new WWWForm();
  55. if(encrypt)
  56. {
  57. JsonData json = JsonMapper.ToObject("{}");
  58. for(int i=0; i<data.Count; i++)
  59. {
  60. KeyValuePair<string, object> kvp = data[i];
  61. info += "["+kvp.Key+" : "+kvp.Value+"] ";
  62. json[kvp.Key] = kvp.Value.ToString();
  63. }
  64. form.AddField("v", DecryptionUtil.Encryption(json.ToJson()));
  65. }
  66. else
  67. {
  68. for(int i=0; i<data.Count; i++)
  69. {
  70. KeyValuePair<string, object> kvp = data[i];
  71. info += "["+kvp.Key+" : "+kvp.Value+"] ";
  72. form.AddField(kvp.Key, kvp.Value.ToString());
  73. }
  74. }
  75. Debuger.Log("Url data : "+info);
  76. return form;
  77. }
  78. }