C#后端调用WebApi地址
2023-09-27 14:28:05 时间
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 using Newtonsoft.Json; 2 using System; 3 using System.Collections.Generic; 4 using System.Linq; 5 using System.Net.Http; 6 using System.Net.Http.Headers; 7 using System.Text; 8 using System.Threading.Tasks; 9 10 namespace Services 11 { 12 public class HttpHelper<T> where T : class, new() 13 { 14 private Uri BaseUri 15 { 16 get 17 { 18 return new Uri(GlobalString.BaseUrl); 19 } 20 } 21 22 private Uri RequestUri(string requestUrl) 23 { 24 25 return new Uri(BaseUri, requestUrl); 26 } 27 28 //用Post还是用Get,要与WebApi的请求方式一致 29 public async Task<T> GetPostResult(string requestUrl, FormUrlEncodedContent content) 30 { 31 using (var client = new HttpClient()) 32 { 33 client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue(GlobalString.JsonHeader)); 34 using (var response = await client.PostAsync(RequestUri(requestUrl), content)) 35 { 36 if (response.IsSuccessStatusCode) 37 { 38 var productJsonString = await response.Content.ReadAsStringAsync(); 39 return JsonConvert.DeserializeObject<T>(productJsonString); 40 } 41 return new T(); 42 } 43 } 44 } 45 } 46 }
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace Services 8 { 9 public class GlobalString 10 { 11 public static string JsonHeader 12 { 13 get 14 { 15 return "application/json"; 16 } 17 } 18 19 public static string BaseUrl 20 { 21 get 22 { 23 return "http://www.XXX.com"; 24 } 25 } 26 27 28 public static string GetApiUrl 29 { 30 get 31 { 32 return "apiUrl"; 33 } 34 } 35 36 } 37 }
相关文章
- C#-播放器相关
- C# Object对象的ToString方法在转换日期时丢失毫秒
- 如何使用T-SQL备份还原数据库及c#如何调用执行? C#中索引器的作用和实现。 jquery控制元素的隐藏和显示的几种方法。 localStorage、sessionStorage用法总结 在AspNetCore中扩展Log系列 - 介绍开源类库的使用(一) span<T>之高性能字符串操作实测
- 腾讯云图片鉴黄集成到C# SQL Server 怎么在分页获取数据的同时获取到总记录数 sqlserver 操作数据表语句模板 .NET MVC后台发送post请求 百度api查询多个地址的经纬度的问题 try{}里有一个 return 语句,那么紧跟在这个 try 后的 finally {}里的 code 会 不会被执行,什么时候被执行,在 return 前还是后? js获取某个日期
- c#如何设置成:【当前打开的项目是什么,就默认它为启动项目】,不然新添或打开别的项目都要设置一次启动 [原创]VS2012中将当前选定项目做为启动项
- 【C#】overide不会影响继承于同一个父类的子类
- 浅谈C# .Net技术面试 , 正在找工作的人一定要看看
- C#-深入解析编程中泛型委托的使用及多播委托实例
- c#中让计算机休眠与远程唤醒
- 【分析】浅谈C#中Control的Invoke与BeginInvoke在主副线程中的执行顺序和区别(SamWang)
- 实战经验分享之C#对象XML序列化
- 基于C#+SQL Server(WinForm)学生选课及成绩查询管理系统【100010027】
- C#学习之获取MAC地址
- #H3C#无线 如何手动释放指定DHCP地址
- C#趣味程序---个位数为6,且能被3整出的五位数
- C#中Invoke 和 BeginInvoke 的区别
- C#-winform-判断用户按下了Ctrl+S键