public static PostAsync ( string url, Action |
||
url | string | |
requestPreparer | Action |
|
postData | string>.IDictionary | |
return | Task |
/// <summary> /// Makes an asynchronous http POST request to the specified url. /// </summary> /// <param name="url">The url to send the request to.</param> /// <param name="prepareRequest">A callback that initializes the request with default values.</param> /// <param name="postData">form url encoded data.</param> /// <returns>A <see cref="T:Task{IResponse}"/>.</returns> public Task <IResponse> Post(string url, Action <IRequest> prepareRequest, IDictionary <string, string> postData) { IRequest req = null; return(HttpHelper.PostAsync(url, request => { req = new HttpWebRequestWrapper(request); prepareRequest(req); }, postData).Then(response => (IResponse) new HttpWebResponseWrapper(response))); }
/// <summary> /// Makes an asynchronous http POST request to the specified url. /// </summary> /// <param name="url">The url to send the request to.</param> /// <param name="prepareRequest">A callback that initializes the request with default values.</param> /// <param name="postData">form url encoded data.</param> /// <param name="isLongRunning">Indicates whether the request is long running</param> /// <returns>A <see cref="T:Task{IResponse}"/>.</returns> public Task <IResponse> Post(string url, Action <IRequest> prepareRequest, IDictionary <string, string> postData, bool isLongRunning) { return(HttpHelper.PostAsync(url, request => { request.ConnectionGroupName = isLongRunning ? _longRunningGroup : _shortRunningGroup; var req = new HttpWebRequestWrapper(request); prepareRequest(req); PrepareClientRequest(req); }, postData).Then(response => (IResponse) new HttpWebResponseWrapper(response))); }
/// <summary> /// Makes an asynchronous http POST request to the specified url. /// </summary> /// <param name="url">The url to send the request to.</param> /// <param name="prepareRequest">A callback that initializes the request with default values.</param> /// <param name="postData">form url encoded data.</param> /// <param name="isLongRunning">Indicates whether the request is long running</param> /// <returns>A <see cref="T:Task{IResponse}"/>.</returns> public Task <IResponse> Post(string url, Action <IRequest> prepareRequest, IDictionary <string, string> postData, bool isLongRunning) { return(HttpHelper.PostAsync(_httpClient, url, request => { //request.ConnectionGroupName = isLongRunning ? _longRunningGroup : _shortRunningGroup; // Todo.. figure out abort var req = new HttpRequestMessageWrapper(request, () => { }); prepareRequest(req); PrepareClientRequest(req); }, postData).Then(response => (IResponse) new HttpResponseMessageWrapper(response))); }