个人资料

主页 博客 留言板 搜索
跳过导航链接首页 > 博客列表 > 博客正文

C#使用httpClient,httpContent添加Header,Post json数据

分类:

好像UWP里面还是httpClient好用些,添加Headers很方便.但是HttpContent要Json数据,想了半天.

		public static async Task<string> Bing_Translate(string from, string to, string content)
		{
			string token = await GetBingToken();
			var url = new Uri($"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from={from}&to={to}", UriKind.Absolute);
			var httpClient = new System.Net.Http.HttpClient();
			tContent tc = new tContent { text = content };
			List<tContent> tcs = new List<tContent> { tc};
			string json = JsonConvert.SerializeObject(tcs);
			Debug.WriteLine(json);
			HttpContent httpContent = new StringContent(json);
			httpContent.Headers.ContentType= new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");
			Debug.WriteLine(httpContent.ToString());
			var reponse = await httpClient.PostAsync(url, httpContent);
			String result = await reponse.Content.ReadAsStringAsync();
			return result;

		}
      各种尝试后,还是需要自己建立一个与json对应的对象,然后序列化成为string,还以为httpContent可以自己完成这一步...


然后变为字符串上传.有点无语,bing的格式要求有点恶心啊.


admin
最初发表2019/1/15 3:11:25 最近更新2019/1/15 3:12:43 2752
为此篇作品打分
10