@@ -53,7 +53,7 @@ class GJRequest {
5353 /**
5454 * The last response generated by `send()` spawns here.
5555 */
56- public var lastResponse (default , null ): Response = {};
56+ public var lastResponse (default , null ): Response = {success : false , message : " No response has been received yet " };
5757
5858 /**
5959 * The current instruction `this` is willing to execute. Cannot be modified while `executing == true`.
@@ -84,7 +84,7 @@ class GJRequest {
8484 call = Call ;
8585
8686 function get_url (): String
87- return ' https://api.gamejolt.com/api/game/v1_2 ${parseType (call )}' ;
87+ return sign ( ' https://api.gamejolt.com/api/game/v1_2 ${parseType (call )}' ) ;
8888
8989 function set_call (value : RequestType ): RequestType {
9090 if (executing )
@@ -101,45 +101,36 @@ class GJRequest {
101101 return ;
102102 executing = true ;
103103
104- sys.thread. Thread .create (function () {
105- var loader = new openfl.net. URLLoader ();
106- loader .addEventListener (Event .COMPLETE , function (complete ) {
107- var response : Response = lastResponse = formatImages (cast haxe. Json .parse (loader .data ).response );
108- if (response .message != null ) {
109- var err : String = ' Response Error: ${response .message }' ;
110- if (response .responses != null ) {
111- var index : Int = response .responses .findIndex (r -> r .message != null );
112- if (index >= 0 )
113- err + = ' (Request # $index : ${response .responses [index ].message })' ;
114- }
115- onError (err );
116- } else
117- onComplete (response );
118-
119- executing = false ;
120- });
121- loader .addEventListener (ProgressEvent .PROGRESS , progress -> onProgress (progress .bytesLoaded , progress .bytesTotal ));
122- loader .addEventListener (IOErrorEvent .IO_ERROR , function (ioError ) {
123- lastResponse = {message : ' IO Error: ${ioError .text }' }
124- onError (lastResponse .message );
125- executing = false ;
126- });
127- loader .addEventListener (SecurityErrorEvent .SECURITY_ERROR , securityError -> {
128- lastResponse = {message : ' Security Error: ${securityError .text }' }
129- onError (lastResponse .message );
130- executing = false ;
131- });
132- loader .load (new openfl.net. URLRequest (url ));
104+ var loader = new openfl.net. URLLoader ();
105+ loader .addEventListener (Event .COMPLETE , function (complete ) {
106+ trace (" Success!" );
107+ lastResponse = formatImages (cast haxe. Json .parse (loader .data ).response );
108+ if (lastResponse .message != null )
109+ onError (' Response Error: ${lastResponse .message }' );
110+ else
111+ onComplete (lastResponse );
112+ executing = false ;
113+ });
114+ loader .addEventListener (ProgressEvent .PROGRESS , progress -> onProgress (progress .bytesLoaded , progress .bytesTotal ));
115+ loader .addEventListener (IOErrorEvent .IO_ERROR , function (ioError ) {
116+ lastResponse = {success : false , message : ' IO Error: ${ioError .text }' }
117+ onError (lastResponse .message );
118+ executing = false ;
119+ });
120+ loader .addEventListener (SecurityErrorEvent .SECURITY_ERROR , securityError -> {
121+ lastResponse = {success : false , message : ' Security Error: ${securityError .text }' }
122+ onError (lastResponse .message );
123+ executing = false ;
133124 });
125+ loader .load (new openfl.net. URLRequest (url ));
134126 }
135127
136128 /**
137129 * Makes retrieved images to have a better resolution.
138130 * @param oldRes The `Response` to be modified.
139131 * @return A new `Response` with every Image URL modified for a better resolution when requested.
140132 */
141- function formatImages (oldRes : Response ): Response {
142- var res : Response = oldRes ;
133+ function formatImages (res : Response ): Response {
143134 if (res .users != null )
144135 res .users .iter (u -> u .avatar_url = ' ${u .avatar_url .substring (0 , 32 )}1000 ${u .avatar_url .substr (34 )}' .replace (" .jpg" , " .png" )
145136 .replace (" .webp" , " .png" ));
@@ -346,7 +337,7 @@ class GJRequest {
346337
347338 var urlSection : String = ' / $command ${action != " " ? ' / $action ' : " " }?game_id= ${GameJolt .gameID }${[for (p in params ) ' & ${p .name }= ${p .value }' ].join (" " )}' ;
348339 if (signed )
349- urlSection = sign (urlSection );
340+ urlSection = sign (urlSection ). urlEncode () ;
350341 return urlSection ;
351342 }
352343
@@ -357,6 +348,6 @@ class GJRequest {
357348 */
358349 function sign (daUrl : String ): String {
359350 var urlToEncode : String = daUrl + GameJolt .gameKey ;
360- return ' $daUrl &signature= ${GameJolt .usingMd5 ? haxe.crypto. Md5 .encode (urlToEncode ) : haxe.crypto. Sha1 .encode (urlToEncode )}' . urlEncode () ;
351+ return ' $daUrl &signature= ${GameJolt .usingMd5 ? haxe.crypto. Md5 .encode (urlToEncode ) : haxe.crypto. Sha1 .encode (urlToEncode )}' ;
361352 }
362353}
0 commit comments