static void StartDownloadingData(string url, Action <object> OnGetData)
 {
     ServicePointManager.ServerCertificateValidationCallback += (send, certificate, chain, sslPolicyErrors) => { return(true); };
     using (WebClient client = new WebClient())
     {
         try
         {
             string response = client.DownloadString(url);
             response = Regex.Replace(response, @"\\u([\dA-Fa-f]{4})", v => ((char)Convert.ToInt32(v.Groups[1].Value, 16)).ToString());
             //As we can not access any Unity related API in worker thread dispatching the result in main thread via helper class
             UnityMainThread.ExecuteOnMainThread(OnGetData, response);
         }
         catch (Exception ex)
         {
             UnityMainThread.ExecuteOnMainThread(OnGetData, ex);
         }
     }
 }