/// <summary> /// 使用Post方法获取字符串结果,常规提交 /// </summary> /// <param name="serviceProvider">.NetCore 下的服务器提供程序,如果 .NET Framework 则保留 null</param> /// <param name="url"></param> /// <param name="cookieContainer"></param> /// <param name="formData"></param> /// <param name="encoding"></param> /// <param name="certName">证书唯一名称,如果不需要则保留null</param> /// <param name="cer">证书,如果不需要则保留null</param> /// <param name="useAjax"></param> /// <param name="headerAddition">header 附加信息</param> /// <param name="timeOut"></param> /// <param name="checkValidationResult">验证服务器证书回调自动验证</param> /// <returns></returns> public static async Task <string> HttpPostAsync( IServiceProvider serviceProvider, string url, CookieContainer cookieContainer = null, Dictionary <string, string> formData = null, Encoding encoding = null, #if !NET451 string certName = null, #else X509Certificate2 cer = null, #endif bool useAjax = false, Dictionary <string, string> headerAddition = null, int timeOut = Config.TIME_OUT, bool checkValidationResult = false) { MemoryStream ms = new MemoryStream(); await formData.FillFormDataStreamAsync(ms).ConfigureAwait(false);//填充formData string contentType = HttpClientHelper.GetContentType(formData); return(await HttpPostAsync( serviceProvider, url, cookieContainer, ms, null, null, encoding, #if !NET451 certName, #else cer, #endif useAjax, headerAddition, timeOut, checkValidationResult, contentType).ConfigureAwait(false)); }
/// <summary> /// 使用Post方法获取字符串结果,常规提交 /// </summary> /// <returns></returns> public static async Task <string> HttpPostAsync(string url, CookieContainer cookieContainer = null, Dictionary <string, string> formData = null, Encoding encoding = null, X509Certificate2 cer = null, bool useAjax = false, Dictionary <string, string> headerAddition = null, int timeOut = Config.TIME_OUT, bool checkValidationResult = false) { MemoryStream ms = new MemoryStream(); await formData.FillFormDataStreamAsync(ms);//填充formData string contentType = HttpClientHelper.GetContentType(formData); return(await HttpPostAsync(url, cookieContainer, ms, null, null, encoding, cer, useAjax, headerAddition, timeOut, checkValidationResult, contentType)); }
/// <summary> /// 使用Post方法获取字符串结果,常规提交 /// </summary> /// <returns></returns> public static string HttpPost(string url, CookieContainer cookieContainer = null, Dictionary<string, string> formData = null, Encoding encoding = null, #if NETSTANDARD2_0 string certName = null, #else X509Certificate2 cer = null, #endif bool useAjax = false, Dictionary<string, string> headerAddition = null, int timeOut = Config.TIME_OUT, bool checkValidationResult = false) { MemoryStream ms = new MemoryStream(); formData.FillFormDataStream(ms);//填充formData string contentType = HttpClientHelper.GetContentType(formData); return HttpPost(url, cookieContainer, ms, null, null, encoding, #if NETSTANDARD2_0 certName, #else cer, #endif useAjax, headerAddition, timeOut, checkValidationResult, contentType); }