下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第C#多線程TPL模式下使用HttpClientstringuserName=Request.Headers["UserName"];
stringpassword=Request.Headers["Password"];
if(userName=="admin"password=="123")
//保存文件
file.SaveAs(Server.MapPath("~/"+file.FileName));
return"ok";
else
return"error";
}
然后創(chuàng)建一個(gè)Winform程序,用來(lái)發(fā)送Http請(qǐng)求。界面上有三個(gè)按鈕,分別發(fā)送三種不同內(nèi)容的Http請(qǐng)求。
1、發(fā)送表單內(nèi)容的請(qǐng)求
我們看下面發(fā)送表單請(qǐng)求的代碼:
///summary
///模擬發(fā)送表單內(nèi)容的Http請(qǐng)求
////summary
///paramname="sender"/param
///paramname="e"/param
privateasyncvoidbtnForm_Click(objectsender,EventArgse)
//實(shí)例化對(duì)象
HttpClientclient=newHttpClient();
Dictionarystring,stringdic=newDictionarystring,string
dic["userName"]="admin";
dic["password"]="123";
//參數(shù)
FormUrlEncodedContentcontent=newFormUrlEncodedContent(dic);
//發(fā)送post請(qǐng)求
HttpResponseMessageresponseMsg=awaitclient.PostAsync("http://localhost:55179/HttpClientTest/login",content);
//返回報(bào)文體
//responseMsg.Content
//返回響應(yīng)頭
//responseMsg.Headers
//返回響應(yīng)碼
//responseMsg.StatusCode
//獲取返回值這里確定返回的是字符串,調(diào)用string
stringmsg=awaitresponseMsg.Content.ReadAsStringAsync();
MessageBox.Show($"響應(yīng)碼:{responseMsg.StatusCode.ToString()}");
MessageBox.Show($"返回內(nèi)容:{msg}");
}
程序運(yùn)行結(jié)果:
點(diǎn)擊確定,查看返回內(nèi)容:
2、發(fā)送json格式內(nèi)容的請(qǐng)求
下面是發(fā)送json內(nèi)容請(qǐng)求的代碼:
///summary
///發(fā)送json
////summary
///paramname="sender"/param
///paramname="e"/param
privateasyncvoidbtnJson_Click(objectsender,EventArgse)
//json格式的字符串
stringjsonData="{userName:'admin',password:'123'}";
//實(shí)例化對(duì)象
HttpClientclient=newHttpClient();
StringContentcontent=newStringContent(jsonData);
//設(shè)置contentType,必須要設(shè)置設(shè)置為json格式,MVC會(huì)自動(dòng)轉(zhuǎn)換成Model類型
content.Headers.ContentType=MediaTypeHeaderValue.Parse("application/json");
//發(fā)送post請(qǐng)求
HttpResponseMessageresponseMsg=awaitclient.PostAsync("http://localhost:55179/HttpClientTest/login2",content);
//獲取返回值
stringmsg=awaitresponseMsg.Content.ReadAsStringAsync();
MessageBox.Show($"響應(yīng)碼:{responseMsg.StatusCode.ToString()}");
MessageBox.Show($"返回內(nèi)容:{msg}");
}
3、上傳文件
看一下上傳文件的代碼:
///summary
///上傳文件
////summary
///paramname="sender"/param
///paramname="e"/param
privateasyncvoidbtnUpload_Click(objectsender,EventArgse)
//實(shí)例化對(duì)象
HttpClientclient=newHttpClient();
MultipartFormDataContentcontent=newMultipartFormDataContent();
content.Headers.Add("UserName","admin");
content.Headers.Add("Password","123");
using(Streamstream=File.OpenRead(@"F:\數(shù)據(jù)庫(kù).txt"))
content.Add(newStreamContent(stream),"file","test.txt");
HttpResponseMessageresponseMsg=awaitclient.PostAsync("http://localhost:55179/HttpClientTest/Upload",content);
//返回值
stringmsg=awaitresponseMsg.Content.ReadAsStringAsync();
MessageBox.Show($"響應(yīng)碼:{responseMsg.StatusCode.ToS
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)校健康教育制度
- 2026年食品安全與衛(wèi)生管理考試題集及答案
- 2026年?duì)I銷策略實(shí)戰(zhàn)題庫(kù)市場(chǎng)定位與消費(fèi)者行為研究
- 2026年中醫(yī)藥學(xué)基礎(chǔ)理論與應(yīng)用初級(jí)試題
- 2026年計(jì)算機(jī)網(wǎng)絡(luò)安全專業(yè)試題庫(kù)認(rèn)證題庫(kù)及答案解析
- 2026年人工智能技術(shù)與應(yīng)用考試政務(wù)云平臺(tái)的AI技術(shù)探索
- 2026年軟件測(cè)試工程師實(shí)操技巧與答案解析
- 2025 小學(xué)二年級(jí)道德與法治上冊(cè)家庭綠植我按時(shí)澆水養(yǎng)護(hù)促成長(zhǎng)更翠綠課件
- 2026年高頻面試問(wèn)題專業(yè)答案與解析集
- 2026年化學(xué)實(shí)驗(yàn)技能操作模擬題
- 高校行政人員筆試試題(附答案)
- 2025年農(nóng)村會(huì)計(jì)考試試題題庫(kù)及答案
- 檢驗(yàn)科電解質(zhì)教學(xué)課件
- 浙江省杭州市西湖區(qū)杭州學(xué)軍中學(xué)2025-2026學(xué)年物理高二上期末質(zhì)量跟蹤監(jiān)視試題含解析
- 創(chuàng)傷病人的評(píng)估和護(hù)理
- 房建工程施工工藝流程
- 設(shè)備委托開(kāi)發(fā)合同(標(biāo)準(zhǔn)版)
- 理解人際溝通中的情緒管理和表達(dá)技巧應(yīng)用
- 2025 年四年級(jí)語(yǔ)文閱讀理解(分析人物形象)突破卷
- 手術(shù)室三方核查規(guī)范
- 2025年黑龍江省大慶市中考數(shù)學(xué)試題【含答案、解析】
評(píng)論
0/150
提交評(píng)論