.NET?HttpClient簡(jiǎn)單使用教程
創(chuàng)建一個(gè)名為HttpClientTest的Web API項(xiàng)目

新建Clients文件夾,用于存放自定義的HttpClient

在Clients下新建一個(gè)MyHttpClient類

代碼為:
namespace HttpClientTest.Clients
{
public class MyHttpClient
{
private readonly HttpClient _client;
public MyHttpClient(HttpClient client)
{
_client = client;
}
public async Task<string> ShowAsync()
{
return await _client.GetStringAsync("https://www.baidu.com");
}
}
}
將自定義的MyHttpClient服務(wù)注冊(cè)進(jìn)容器中
services.AddHttpClient<MyHttpClient>();
新建一個(gè)TestController來(lái)對(duì)我們的MyHttpClient做一個(gè)測(cè)試
using HttpClientTest.Clients;
using Microsoft.AspNetCore.Mvc;
namespace HttpClientTest.Controllers
{
[ApiController]
[Route("[controller]/[action]")]
public class TestController : ControllerBase
{
private readonly MyHttpClient _myHttpClient;
public TestController(MyHttpClient myHttpClient)
{
_myHttpClient = myHttpClient;
}
[HttpGet]
public async Task<object> GetAsync()
{
return await _myHttpClient.ShowAsync();
}
}
}
訪問(wèn)GetAsync接口,發(fā)現(xiàn)成功返回了百度首頁(yè)的html內(nèi)容

很多時(shí)候,我們希望通過(guò)相對(duì)路徑的方式來(lái)對(duì)遠(yuǎn)程服務(wù)進(jìn)行訪問(wèn)
可以把MyHttpClient改為:
namespace HttpClientTest.Clients
{
public class MyHttpClient
{
private readonly HttpClient _client;
public MyHttpClient(HttpClient client)
{
_client = client;
}
public async Task<string> ShowAsync()
{
//return await _client.GetStringAsync("https://www.baidu.com");
return await _client.GetStringAsync("/");
}
}
}
在注冊(cè)服務(wù)時(shí)就要配置基地址
services.AddHttpClient<MyHttpClient>(client =>
{
client.BaseAddress = new Uri("https://www.baidu.com");
});
到此這篇關(guān)于.net HttpClient簡(jiǎn)單使用的文章就介紹到這了,更多相關(guān).net HttpClient使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解免費(fèi)開(kāi)源的DotNet任務(wù)調(diào)度組件Quartz.NET(.NET組件介紹之五)
本篇文章主要介紹免費(fèi)開(kāi)源的DotNet任務(wù)調(diào)度組件Quartz.NET(.NET組件介紹之五),具有一定參考價(jià)值,有興趣的可以了解一下。2016-12-12
.NET使用System.Timers.Timer類實(shí)現(xiàn)程序定時(shí)執(zhí)行
這篇文章介紹了.NET使用System.Timers.Timer類實(shí)現(xiàn)程序定時(shí)執(zhí)行的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07
asp.net 數(shù)據(jù)訪問(wèn)層 存儲(chǔ)過(guò)程分頁(yè)語(yǔ)句
在asp.net 網(wǎng)頁(yè)中如果在業(yè)務(wù)邏輯層分頁(yè)在使用PagedDataSource對(duì)象,但如果數(shù)據(jù)記錄過(guò)多,使用它會(huì)嚴(yán)重的損害應(yīng)用程序的性能.2009-12-12
ASP.NET MVC使用正則表達(dá)式驗(yàn)證手機(jī)號(hào)碼
這篇文章介紹了ASP.NET MVC使用正則表達(dá)式驗(yàn)證手機(jī)號(hào)碼的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-09-09
VB.NET生成隨機(jī)串或隨機(jī)數(shù)字的方法總結(jié)
本篇文章主要介紹了VB.NET生成隨機(jī)串或隨機(jī)數(shù)字的方法,具有一定的參考價(jià)值,有需要的可以了解一下。2016-11-11

