C# RestSharp 使用

RestSharp 官網(wǎng) https://restsharp.dev
https://github.com/restsharp/RestSharp

參考
https://blog.csdn.net/xiaopanpan92/article/details/115463636

//1.首先創(chuàng)建一個 RestClient對象
//serviceUrl是需要請求的地址
 var client = new RestClient(serviceUrl);
//2.創(chuàng)建一個請求,這里可以指定請求的類型
  var request = new RestRequest(Method.POST);
//3.給請求加各種參數(shù)
//添加頭部信息
request.AddHeader("Content-Type", "multipart/form-data");
//添加文件
//也可以通過字節(jié)流的方式添加文件 AddFileBytes(string name, byte[] bytes, string filename, string contentType = "application/x-gzip")
request.AddFile("filePath", pdfPath);
//添加參數(shù)
request.AddParameter("Timeout", options.Timeout.Value)
//官網(wǎng)中還有好多添加參數(shù)的方法
//可以查看該地址進(jìn)行https://restsharp.dev/api/RestSharp.html#class-restrequest
//4.執(zhí)行請求,并獲得返回值
   var restResponse = client.Execute(request);
   result = restResponse.Content;
//處理返回值序列化也進(jìn)行了封裝,可以直接調(diào)用方法
//例如 Execute<Call>(request),可以直接將返回值序列化為對象
//至此一個請求就發(fā)送接收成功了
//使用起來還是比較方便的

使用

        private async Task RequestAsync<T>(Dictionary<string, string> parameter)
        {

            RestClient client = new(Constants.HOST_URL);
            RestRequest request = new("api/v1/banner", Method.Get);
            string signature = AuthHelper.getBase64Signature(parameter);
            _ = request
                .AddHeader("signature", signature)
                .AddHeader("access-key", "game_box");
            RestResponse<ApiResponse<T>> response = await client.ExecuteAsync<ApiResponse<T>>(request);
            ApiResponse<T> result = response.Data;

            Trace.WriteLine("restResponse" + result);

        }
 public class ApiResponse<T> : BaseResponse<T>
    {
        public int code { get; set; }
        public string message { get; set; }
        public T value { get; set; }

        public override int getResponseCode()
        {
            return code;
        }

        public override T getResponseData()
        {
            return value;
        }

        public override string getResponseMsg()
        {
            return message;
        }

        public override bool IsSuccess()
        {
            return code == 0 ? true : false;
        }
    }
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末辅愿,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌癞埠,老刑警劉巖苗踪,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件通铲,死亡現(xiàn)場離奇詭異颅夺,居然都是意外死亡吧黄,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來剧蹂,“玉大人宠叼,你說我怎么就攤上這事短绸〈妆眨” “怎么了证逻?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵囚企,是天一觀的道長龙宏。 經(jīng)常有香客問我,道長辆影,這世上最難降的妖魔是什么蛙讥? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任次慢,我火速辦了婚禮迫像,結(jié)果婚禮上侵蒙,老公的妹妹穿的比我還像新娘。我一直安慰自己算凿,他們只是感情好氓轰,可當(dāng)我...
    茶點故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著限嫌,像睡著了一般怒医。 火紅的嫁衣襯著肌膚如雪稚叹。 梳的紋絲不亂的頭發(fā)上扒袖,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天季率,我揣著相機與錄音飒泻,去河邊找鬼啊掏。 笑死,一個胖子當(dāng)著我的面吹牛啡省,可吹牛的內(nèi)容都是我干的卦睹。 我是一名探鬼主播方库,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼徐鹤,長吁一口氣:“原來是場噩夢啊……” “哼邀层!你這毒婦竟也來了寥院?” 一聲冷哼從身側(cè)響起秸谢,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤估蹄,失蹤者是張志新(化名)和其女友劉穎元媚,沒想到半個月后刊棕,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年怜庸,在試婚紗的時候發(fā)現(xiàn)自己被綠了割疾。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片嘉栓。...
    茶點故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡麻昼,死狀恐怖抚芦,靈堂內(nèi)的尸體忽然破棺而出迈螟,到底是詐尸還是另有隱情井联,我是刑警寧澤,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站侦副,受9級特大地震影響秦驯,放射性物質(zhì)發(fā)生泄漏挣棕。R本人自食惡果不足惜洛心,卻給世界環(huán)境...
    茶點故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一词身、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧葫笼,春花似錦路星、人聲如沸瘟忱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽哀峻。三九已至剩蟀,卻和暖如春育特,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背犬缨。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留迷郑,地道東北人。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓嗡害,卻偏偏與公主長得像焚碌,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子就漾,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,713評論 2 354

推薦閱讀更多精彩內(nèi)容