C#发送POST,GET,DELETE请求API,并接受返回值
发送POST请求
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | /// <summary> /// API发送POST请求 /// </summary> /// <param name="url">请求的API地址</param> /// <param name="parametersJson">POST过去的参数(JSON格式)字符串</param> /// <returns></returns> public static string ApiPost( string url, string parametersJson) { HttpClient client = new HttpClient(); client.BaseAddress = new Uri(System.Configuration.ConfigurationManager.AppSettings[ "ApiHttp" ]); // 为JSON格式添加一个Accept报头 client.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue( "application/json" )); //需要传递的参数(参数封装成JSON) HttpContent content = new StringContent(parametersJson) { Headers = { ContentType = new MediaTypeHeaderValue( "application/json" ) } }; HttpResponseMessage response = client.PostAsync(url, content).Result; response.EnsureSuccessStatusCode(); return response.Content.ReadAsStringAsync().Result; } |
发送GET请求
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | /// <summary> /// API发送GET请求,返回Json /// </summary> /// <param name="url"></param> /// <returns>如果未成功返回空</returns> public static string ApiGet( string url) { HttpClient client = new HttpClient(); client.BaseAddress = new Uri(System.Configuration.ConfigurationManager.AppSettings[ "ApiHttp" ]); // 为JSON格式添加一个Accept报头 client.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue( "application/json" )); HttpResponseMessage response = client.GetAsync(url).Result; if (response.IsSuccessStatusCode) { return response.Content.ReadAsStringAsync().Result; } return "" ; } |
发送DELETE请求
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | /// <summary> /// API发送DELETE请求,返回状态:200成功,201失败 /// </summary> /// <param name="url"></param> /// <returns></returns> public static string ApiDelete( string url) { HttpClient client = new HttpClient(); client.BaseAddress = new Uri(System.Configuration.ConfigurationManager.AppSettings[ "ApiHttp" ]); // 为JSON格式添加一个Accept报头 client.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue( "application/json" )); HttpResponseMessage response = client.DeleteAsync(url).Result; if (response.IsSuccessStatusCode) { return response.Content.ReadAsStringAsync().Result; } return "" ; } |
来源:中国建筑市场网
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构