C# VIII: 操作Web API (.Net Core 1.0)

所謂操作Web API,無非是Send相應的Request到API和Receive對應的API返回。
以下代碼基於.NET Core 1.0.

Send Request:

            var vm = null; // View model for real data
            var client = new HttpClient();
            try
            {
                client.BaseAddress = new Uri("http://apiurl");
                client.DefaultRequestHeaders.Accept.Clear();
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                await client.PutAsync("api/api1", new StringContent(JsonConvert.SerializeObject(vm).ToString(),
                    Encoding.UTF8, "application/json"));
            }
            catch (Exception exp)
            {
                System.Diagnostics.Debug.WriteLine(exp.Message);
                return new ObjectResult(false);
            }

Receive Response:

            var client = new HttpClient();
            try
            {
                client.BaseAddress = new Uri("http://apiurl/");
                client.DefaultRequestHeaders.Accept.Clear();
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                String str = client.GetStringAsync("api/ap1").Result;

                return JsonConvert.DeserializeObject<List<YourOwnViewModel>>(str);
            }
            catch (Exception exp)
            {
                System.Diagnostics.Debug.WriteLine(exp.Message);
            }

是爲之記。
Alva Chien
2016.9.30

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章