前情提要
筆者在上一篇: [DotnetCore]Refit初體驗 ,簡單介紹Refit的使用方式,因上篇中要簡單的呈現,因而透過Linqpad
來完成示範,這篇則建立Dotnet Core
完整專案,並將Refit
套上使用。
內容
建立WebApi專案
筆者就直接透過dotnet cli完成建立WebApi專案
1 | # 建立方案資料夾 |
安裝相關套件
安裝相關套件,相關套件清單如下:
Refit
Refit.HttpClientFactory
(透過DI
註冊,需令Refit
透過dotnet core
內建HttpClientFactory
取得HttpClient
則需要安裝)Refit.Newtonsoft.Json
(需使用Newtonsoft.Json
做序列化,反序列化則需要安裝)Refit.Xml
(若Request需轉成XML
格式則需要安裝)
1 | dotnet add package Refit |
建立Model及ApiService
筆者在上一篇: [DotnetCore]Refit初體驗 有詳細列出,這邊就不贅述了
建立Controller
建立一般WebApi使用Controller及宣告Action
1 | [ ] |
註冊其APIService
要在Controller
中使用,需要將IOpenDataApiService
需註冊於Startup(Program)
中
1 | builder.Services.AddRefitClient<IOpenDataApiService>() |
Configuration
上面註冊步驟使用到Configuration
,內容如下:
1 | "BaseUrl": { |
結果呈現
透過Postman
可以測試一下API
運作
結論
非常簡單地套用並完成呼叫HttpRequest
,DotnetCore
寫到現在,不透過注入使用還真的有點不習慣,透過Refit.HttpClientFactory
套件來完成註冊及注入,非常符合DotnetCore
的撰寫風格,下一篇將詳細介紹Refit
的各種用法。
參考