/// <summary>Attempts to get data from a web request.</summary> /// <param name="request">The HTTP web request.</param> /// <param name="method">The OneAll supported HTTP method to use.</param> /// <param name="creds">The <see cref="Credential"/> used to authenticate the call, or null for calls not requiring authentication.</param> /// <param name="callBack">The call-back to invoke after the request is complete.</param> /// <param name="state">The initial state object provided.</param> private static void GetAsync(HttpWebRequest request, OneAllMethod method, Credential creds, BinaryReceivedHandler callBack, object state) { request.SetHTTPMethod(method); request.SetBasicAuth(creds); request.BeginGetResponse(OnRequestCompleted, new BinaryWebClientState() { Request = request, Callback = callBack, State = state }); }
/// <summary>Attempts to get data from a web request.</summary> /// <param name="request">The HTTP web request.</param> /// <param name="method">The OneAll supported HTTP method to use.</param> /// <param name="creds">The <see cref="Credential"/> used to authenticate the call, or null for calls not requiring authentication.</param> /// <returns>The binary data from the request.</returns> private static byte[] GetSync(HttpWebRequest request, OneAllMethod method, Credential creds) { request.SetHTTPMethod(method); request.SetBasicAuth(creds); return ReadResponse(request); }
/// <summary>Attempts to get data from a web request.</summary> /// <param name="request">The HTTP web request.</param> /// <param name="method">The OneAll supported HTTP method to use.</param> /// <param name="creds">The <see cref="Credential"/> used to authenticate the call, or null for calls not requiring authentication.</param> /// <param name="data">The raw data to be posted.</param> /// <returns>The binary data from the request.</returns> private static byte[] PostSync(HttpWebRequest request, OneAllMethod method, Credential creds, byte[] data) { request.ContentType = OneAllConstants.HTTP_CONTENTTYPE_FORMURLENCODE; request.SetHTTPMethod(method); request.SetBasicAuth(creds); using (Stream stream = request.GetRequestStream()) { byte[] buffer = new byte[data.Length]; Array.Copy(data, buffer, buffer.Length); stream.Write(buffer, 0, buffer.Length); stream.Flush(); Array.Clear(buffer, 0, buffer.Length); buffer = null; } return ReadResponse(request); }
/// <summary>Attempts to get data from a web request.</summary> /// <param name="request">The HTTP web request.</param> /// <param name="method">The OneAll supported HTTP method to use.</param> /// <param name="creds">The <see cref="Credential"/> used to authenticate the call, or null for calls not requiring authentication.</param> /// <param name="data">The raw data to be posted.</param> /// <param name="callBack">The call-back to invoke after the request is complete.</param> /// <param name="state">The initial state object provided.</param> private static void PostAsync(HttpWebRequest request, OneAllMethod method, Credential creds, byte[] data, BinaryReceivedHandler callBack, object state) { request.ContentType = OneAllConstants.HTTP_CONTENTTYPE_FORMURLENCODE; request.SetHTTPMethod(method); request.SetBasicAuth(creds); request.BeginGetRequestStream(OnRequestStreamObtained, new BinaryWebClientState() { Request = request, Callback = callBack, State = state, Data = data }); }