public void Then( Delegate fulfilledHandler, Delegate errorHandler = null, Delegate progressHandler = null) { var req = new XMLHttpRequest(); req.OnReadyStateChange = () => { if (req.ReadyState != AjaxReadyState.Done) { return; } if (req.Status >= 200 && req.Status < 400) { Logger.Debug(GetType(), "upload success"); fulfilledHandler?.Call(null, ResultHolder <XMLHttpRequest> .CreateSuccess(req)); return; } Logger.Debug(GetType(), "upload error"); fulfilledHandler?.Call( null, ResultHolder <XMLHttpRequest> .CreateFailure(req.ResponseText, null, req)); }; req.Open(_method, _url, true); req.SetRequestHeader("Cache-Control", "no-cache"); req.SetRequestHeader("Pragma", "no-cache"); var tzOffset = Script.Eval <string>("new Date().getTimezoneOffset() + \"\""); req.SetRequestHeader(Philadelphia.Common.Model.Magics.TimeZoneOffsetFieldName, tzOffset); try { var tzCode = Script.Eval <object>("Intl.DateTimeFormat().resolvedOptions().timeZone"); if (Script.IsDefined(tzCode)) { req.SetRequestHeader(Philadelphia.Common.Model.Magics.TimeZoneCodeFieldName, tzCode.ToString()); } } catch (Exception) { //most likely it is unsupported Logger.Error(GetType(), "could not determine timeZone"); } if (CsrfToken != null) { req.SetRequestHeader(Philadelphia.Common.Model.Magics.CsrfTokenFieldName, CsrfToken); } if (_frmData != null) { req.Send(_frmData); } else { req.Send(_dataToPost); } }
public void Then(Delegate fulfilledHandler, Delegate errorHandler, Delegate progressHandler = null) { jQuery.Ajax(new AjaxOptions { Type = "POST", Url = Url, Data = Data, Async = true, ContentType = "JSON", Success = (o, s, arg3) => { ResponseText = arg3.ResponseText; fulfilledHandler.Call(null, this); }, Error = (jqXhr, status, errror) => { _error = "Ajax Error Occured. For this reason 'POST' operation was canceled." + Environment.NewLine + "@status :" + status + Environment.NewLine + "@errror :" + errror + Environment.NewLine + "@POST Data:" + Data + Environment.NewLine + "@Url :" + Url; Console.Log(_error); Console.Log(jqXhr); errorHandler.Call(null, this); } }); }
public void Then(Delegate fulfilledHandler, Delegate errorHandler = null, Delegate progressHandler = null) { Logger.Debug(GetType(), "Then() starting"); _impl( succ => { Logger.Debug(GetType(), "Then _impl invoking successHandler {0}", succ); fulfilledHandler?.Call(this, succ); }, err => { Logger.Debug(GetType(), "Then _impl invoking errorHandler {0}", err); errorHandler?.Call(this, err); }); }
public void Then(Delegate fulfilledHandler, Delegate errorHandler = null, Delegate progressHandler = null) { var request = new XMLHttpRequest(); request.onreadystatechange = (ev) => { if (request.readyState != 4) { return; } if ((request.status == 200) || (request.status == 304)) { fulfilledHandler.Call(null, request); } else { errorHandler.Call(null, request.responseText); } }; if (!string.IsNullOrWhiteSpace(Options.ContentType)) { request.setRequestHeader("Content-type", Options.ContentType); } request.open(Options.Method, Options.Url); if (Options.Method.ToLower() == "post") { request.send(Options.Data); } else { request.send(); } }