-
-
Notifications
You must be signed in to change notification settings - Fork 176
Expand file tree
/
Copy pathRequestHelperExtension.cs
More file actions
154 lines (143 loc) · 4.43 KB
/
RequestHelperExtension.cs
File metadata and controls
154 lines (143 loc) · 4.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
using System;
using UnityEngine.Networking;
namespace Proyecto26
{
public partial class RequestHelper
{
/// <summary>
/// Internal use
/// </summary>
public UnityWebRequest Request { private get; set; }
/// <summary>
/// Returns a floating-point value between 0.0 and 1.0, indicating the progress of uploading body data to the server.
/// </summary>
public float UploadProgress
{
get
{
float progress = 0;
if (this.Request != null)
{
progress = this.Request.uploadProgress;
}
return progress;
}
}
/// <summary>
/// Returns the number of bytes of body data the system has uploaded to the remote server. (Read Only)
/// </summary>
public ulong UploadedBytes
{
get
{
ulong bytes = 0;
if (this.Request != null)
{
bytes = this.Request.uploadedBytes;
}
return bytes;
}
}
/// <summary>
/// Returns a floating-point value between 0.0 and 1.0, indicating the progress of downloading body data from the server. (Read Only)
/// </summary>
public float DownloadProgress
{
get
{
float progress = 0;
if (this.Request != null)
{
progress = this.Request.downloadProgress;
}
return progress;
}
}
/// <summary>
/// Returns the number of bytes of body data the system has downloaded from the remote server. (Read Only)
/// </summary>
public ulong DownloadedBytes
{
get
{
ulong bytes = 0;
if (this.Request != null)
{
bytes = this.Request.downloadedBytes;
}
return bytes;
}
}
/// <summary>
/// Get the value of a header
/// </summary>
/// <returns>The string value of the header.</returns>
/// <param name="name">The name of the header.</param>
public string GetHeader(string name)
{
string headerValue;
if (this.Request != null)
{
headerValue = this.Request.GetRequestHeader(name);
}
else
{
this.Headers.TryGetValue(name, out headerValue);
}
return headerValue;
}
private bool _isAborted;
/// <summary>
/// Check if the request was aborted
/// </summary>
/// <value>A boolean to know if the request was aborted by the user</value>
public bool IsAborted
{
get { return _isAborted; }
set { _isAborted = value; }
}
private bool _defaultContentType = true;
/// <summary>
/// Enable or Disable Content Type JSON by default
/// </summary>
/// <value>Check if application/json is enabled by default</value>
public bool DefaultContentType
{
get { return _defaultContentType; }
set { _defaultContentType = value; }
}
private bool _editorCoroutine = false;
/// <summary>
/// Enable to starts en editor coroutine instead
/// </summary>
/// <value>A boolean to know if the request is working on Editor without running the game</value>
public bool EditorCoroutine
{
get { return _editorCoroutine; }
set { _editorCoroutine = value; }
}
/// <summary>
/// Abort the request manually
/// </summary>
public void Abort()
{
if (!this.IsAborted && this.Request != null)
{
try
{
this.IsAborted = true;
if (!this.Request.isDone) {
this.Request.Abort();
}
}
catch (Exception error) {
HttpBase.DebugLog(this.EnableDebug, error.Message, true);
}
finally
{
this.Request = null;
}
}
}
}
}