亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

ASP.NETWebApi實踐系列(二)Get/Post方式調用WebApi

2019-11-14 14:12:06
字體:
來源:轉載
供稿:網友

    本文給出Get/Post方式訪問Web Api的幫助方法,對于Put/Delete方式的調用跟Post調用類似。

    一、Web Api調用幫助類

    下面給出Web Api調用幫助類的代碼:

  1 using System;  2 using System.Collections.Generic;  3 using System.Net.Http;  4 using System.Net.Http.Headers;  5 using System.Text;  6 using System.Web;  7   8 namespace TestApi  9 { 10     /// <summary> 11     /// WebApi訪問幫助類 12     /// </summary> 13     public class WebApiHepler 14     { 15         /// <summary> 16         /// 生成最終URL 17         /// </summary> 18         /// <param name="baseUrl">基準URL(不含查詢串)</param> 19         /// <param name="dictParam">查詢參數字典</param> 20         /// <returns>最終URL</returns> 21         PRivate static string GetLastUrl(string baseUrl, Dictionary<string, string> dictParam) 22         { 23             var sbUrl = new StringBuilder(baseUrl); 24             if (dictParam != null && dictParam.Count > 0) 25             { 26                 sbUrl.Append("?"); 27                 int index = 0; 28                 foreach (var item in dictParam) 29                 { 30                     sbUrl.Append(string.Format("{0}={1}", item.Key, 31                         HttpUtility.UrlEncode(item.Value, Encoding.UTF8))); 32                     if (index < dictParam.Count - 1) 33                     { 34                         sbUrl.Append("&"); 35                     } 36                     index++; 37                 } 38             } 39             var url = sbUrl.ToString(); 40             return url; 41         } 42  43         /// <summary> 44         /// GET方式調用Web Api 45         /// </summary> 46         /// <param name="baseUrl">基準URL(不含查詢串)</param> 47         /// <param name="dictParam">查詢參數字典</param> 48         /// <param name="result">返回數據(Json格式)</param> 49         /// <param name="errMsg">出錯信息</param> 50         /// <returns>成功與否</returns> 51         public static bool Get(string baseUrl, Dictionary<string, string> dictParam, out string result, out string errMsg) 52         { 53             errMsg = string.Empty; 54             result = string.Empty; 55             try 56             { 57                 using (var client = new HttpClient()) 58                 { 59                     client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); 60                     var url = GetLastUrl(baseUrl, dictParam); 61                     var tmpResult = client.GetAsync(url).Result; 62                     tmpResult.EnsureSuccessStatusCode(); 63                     result = tmpResult.Content.ReadAsStringAsync().Result; 64                     return true; 65                 } 66             } 67             catch (Exception ex) 68             { 69                 errMsg = ex.Message; 70                 return false; 71             } 72              73         } 74  75         /// <summary> 76         /// POST方式調用Web Api 77         /// </summary> 78         /// <param name="baseUrl">基準URL(不含查詢串)</param> 79         /// <param name="dictParam">查詢參數字典</param> 80         /// <param name="parseData">傳遞實體數據(Json格式)</param> 81         /// <param name="result">返回數據(Json格式)</param> 82         /// <param name="errMsg">出錯信息</param> 83         /// <returns>成功與否</returns> 84         public static bool Post(string baseUrl, Dictionary<string, string> dictParam, string parseData, out string result, out string errMsg) 85         { 86             errMsg = string.Empty; 87             result = string.Empty; 88             try 89             { 90                 using (var client = new HttpClient()) 91                 { 92                     client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); 93                     var url = GetLastUrl(baseUrl, dictParam); 94                     var content = new StringContent(parseData, Encoding.UTF8); 95                     content.Headers.ContentType = new MediaTypeHeaderValue("application/json"); 96                     var tmpResult = client.PostAsync(url, content).Result; 97                     tmpResult.EnsureSuccessStatusCode(); 98                     result = tmpResult.Content.ReadAsStringAsync().Result; 99                     return true;100                 }101             }102             catch (Exception ex)103             {104                 errMsg = ex.Message;105                 return false;106             }107         }108     }109 }

    二、部分說明

    對以上的代碼作部分說明:

  • GetLastUrl方法用于根據基準URL和查詢參數字典獲取最終URL
  • client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));這句代碼表示希望服務返回Json字符串。
  • content.Headers.ContentType = new MediaTypeHeaderValue("application/json"); 表示以Json格式傳遞實體內容。

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
97精品一区二区视频在线观看| 国产精品福利在线| 欧美日韩电影在线观看| 久久人人爽人人爽人人片亚洲| 中文字幕亚洲自拍| 国产精品扒开腿做爽爽爽男男| 亚洲第一福利在线观看| 日韩在线视频线视频免费网站| 国产精品69久久| 国产精品视频播放| 亚洲精品日韩丝袜精品| 欧美激情亚洲一区| 久久99热精品这里久久精品| 亚洲欧美福利视频| 欧美成年人视频网站| 欧美日韩中文字幕在线| 日韩av黄色在线观看| 亚洲激情视频网| 亚洲a在线观看| 性日韩欧美在线视频| 在线观看视频亚洲| 亚洲性夜色噜噜噜7777| 国产手机视频精品| 国产精品视频在线播放| 91国内揄拍国内精品对白| 日本午夜精品理论片a级appf发布| 久久免费视频网站| 欧美中文字幕在线观看| 美日韩精品视频免费看| 日韩av在线免费播放| 日韩美女毛茸茸| 日韩欧美精品在线观看| 久久久精品日本| 欧美精品videos| 欧洲亚洲免费在线| 韩国三级电影久久久久久| 国产成人a亚洲精品| 欧美xxxx做受欧美.88| 亚洲欧美制服第一页| 一区二区三区天堂av| 国产精品视频在线播放| 亚洲国产精品人人爽夜夜爽| 日韩电影在线观看永久视频免费网站| 亚洲xxxx在线| 久久久久久中文字幕| 中日韩午夜理伦电影免费| 免费99精品国产自在在线| 中文字幕精品www乱入免费视频| 全亚洲最色的网站在线观看| 欧美第一页在线| 日韩网站免费观看高清| 国产午夜精品一区理论片飘花| 欧美高清videos高潮hd| 亚洲精品xxxx| 国产精品网址在线| 亚洲第一中文字幕| 亚洲一区亚洲二区| 精品国产欧美一区二区五十路| 51久久精品夜色国产麻豆| 久久精品国产99国产精品澳门| 欧美极品少妇xxxxⅹ喷水| 日本免费一区二区三区视频观看| 国产一区二区三区直播精品电影| 日韩精品在线视频美女| 日韩精品中文字| 国产一区二区日韩| 在线观看日韩视频| 久久精品国产v日韩v亚洲| 国产91精品最新在线播放| 成人福利网站在线观看11| 欧美最近摘花xxxx摘花| 国产精品18久久久久久麻辣| 国产亚洲视频在线观看| 国产精品青青在线观看爽香蕉| 中文字幕日韩精品在线| 欧美日韩激情小视频| 亚洲自拍偷拍区| 久久精品久久久久久| 欧美视频在线观看免费网址| 亚洲最大福利视频| 精品视频在线播放| 伊人久久免费视频| 欧美性受xxxx黑人猛交| 激情成人中文字幕| 欧美日韩在线视频一区| 国产午夜精品一区理论片飘花| 91在线观看欧美日韩| 91亚洲精品久久久久久久久久久久| 国产视频久久久久久久| 欧美电影免费观看| 欧美在线视频观看| 日韩中文字幕免费视频| 日韩成人激情影院| 久久91精品国产91久久跳| 国产精品久久网| 亚洲毛片在线免费观看| 久久精品久久久久电影| 国产精品视频一区二区高潮| 91精品国产99久久久久久| 欧美性生交xxxxx久久久| 日韩精品中文字| 97免费在线视频| 国产精品福利片| 97视频色精品| 蜜臀久久99精品久久久无需会员| 欧美成年人网站| 人人爽久久涩噜噜噜网站| 91老司机精品视频| 91理论片午午论夜理片久久| 亚洲一区二区精品| 国产精品视频导航| 亚洲欧洲午夜一线一品| 国产精品69精品一区二区三区| 欧美老少做受xxxx高潮| 国产在线拍揄自揄视频不卡99| 亚洲欧美中文在线视频| 久久精品99国产精品酒店日本| 欧美成人午夜免费视在线看片| www.日韩.com| 中文字幕一区二区精品| 88xx成人精品| 欧美性xxxx| 亚洲激情成人网| 色综合久久悠悠| 久久夜色精品亚洲噜噜国产mv| 亚洲激情视频在线观看| 国产亚洲福利一区| 日本久久久久久久久久久| 亚洲精品久久久久中文字幕欢迎你| 日韩欧美在线观看| 伊人久久综合97精品| 国产精品自拍视频| 国产精品视频专区| 欧美精品久久久久久久| 亚洲免费av电影| 国产有码一区二区| 懂色aⅴ精品一区二区三区蜜月| 欧美香蕉大胸在线视频观看| 欧洲成人免费视频| 一本色道久久88综合亚洲精品ⅰ| 国产美女久久久| 国产精品福利在线观看| 日本一区二区在线播放| 久久久久久久久久国产精品| 国产精品1区2区在线观看| 2024亚洲男人天堂| 欧美高跟鞋交xxxxxhd| 久久人人爽人人爽爽久久| 日韩电影免费在线观看| 国产精品日韩在线观看| 国产午夜精品全部视频播放| 日韩中文字幕不卡视频| 亚洲视频国产视频| 久久精品国产亚洲7777| 2023亚洲男人天堂| 中文字幕欧美专区| 最近2019中文免费高清视频观看www99| 欧美极品第一页| 97热精品视频官网| 日韩国产精品亚洲а∨天堂免| 中文字幕日韩高清| 久久青草福利网站| 成人中文字幕+乱码+中文字幕| 亚洲图片欧美午夜|