public void Post() { try { var json = JToken.Parse(Request.ContentString); var url = json["url"].Value <string>(); var reply = new { @result = SoftwareUpdate.Status.ToString(), @progress = SoftwareUpdate.Progress, @progress_url = Request.Path + "/progress" }; Request.Response.Header.ContentType = "application/json"; Request.Response.ContentString = JToken.FromObject(reply).ToString(Formatting.Indented); //Request.Response.FinalizeHeader(); new Thread(specific => { if (SoftwareUpdate.Download(url) == 0) { SoftwareUpdate.OnUpdateShouldLoad(); } return(null); }, null) { Priority = Thread.eThreadPriority.LowestPriority }; } catch (Exception e) { HandleError(e); } }