c#post提交数据的两种方式实例代码
程序员文章站
2022-04-15 22:52:22
post方式提交数据的时候,我们一般可能调用的第三方接口url地址形式提交,接口提交数据可以分为json数据和form表单数据提交,这两种在接收方处理时是不同的。...
1、通过json数据格式发送,接收方可以直接获取stream,反序列化为model数据,下面给出的代码为post方法代码
public static string PostHttpResponse(string url, IDictionary<string, string> parameters) { try { ServicePointManager.ServerCertificateValidationCallback = ValidateCertificate; string jsonString = JsonConvert.SerializeObject(parameters); var content = new StringContent(jsonString, Encoding.UTF8, "application/json"); var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip }; using (var httpClient = new HttpClient(handler)) { var res = httpClient.PostAsync(new Uri(url), content).Result; return res.Content.ReadAsStringAsync().Result; } } catch (Exception ex) { throw ex; } }2、通过form表单方式提交数据,接收方可通过form键值取到数据,下面给出的form格式发送的代码
public static string HttpPostResponseByForm(string url, IDictionary<string, string> parameters) { try { ServicePointManager.ServerCertificateValidationCallback = ValidateCertificate; //使用FormUrlEncodedContent做HttpContent var content = new FormUrlEncodedContent(parameters); var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip }; using (var httpClient = new HttpClient(handler)) { var res = httpClient.PostAsync(new Uri(url), content).Result; return res.Content.ReadAsStringAsync().Result; } } catch (Exception ex) { throw ex; } }
一般我们可以根据实际情况来定,开发中json方式用的比较多;有的第三方api会要求form表单方式调用等。
来源:,转载请保留出处。