public override Task Install(RestClient rc) { var extensibleRequest = rc.extensibleRequest; rc.extensibleRequest = async(httpRequestMessage, restRequestConfig) => { if (!enabled) { return(await extensibleRequest(httpRequestMessage, restRequestConfig)); } BeforeRequest?.Invoke(this, httpRequestMessage); try { var httpResponseMessage = await extensibleRequest(httpRequestMessage, restRequestConfig); RequestSuccess?.Invoke(this, new HttpMessages { httpResponseMessage = httpResponseMessage, httpRequestMessage = httpRequestMessage }); return(httpResponseMessage); } catch (RestException re) { RequestError?.Invoke(this, re); throw; } }; return(Task.CompletedTask); }
public IEnumerator SendRequestEnumerator(UnityWebRequest request, RequestSuccess onSuccess = null, RequestFail onFail = null) { using (UnityWebRequest webRequest = request) { yield return(webRequest.SendWebRequest()); Logger.LogResponse(webRequest); string text = webRequest.downloadHandler.text; Logger.Verbose(text); if (webRequest.IsOk()) { onSuccess?.Invoke(text); } else { onFail?.Invoke(text); } } }