前情提要
筆者在上一篇: [DotnetCore]Refit初體驗 ,簡單介紹Refit的使用方式,因上篇中要簡單的呈現,因而透過Linqpad來完成示範,這篇則建立Dotnet Core完整專案,並將Refit套上使用。
內容
建立WebApi專案
筆者就直接透過dotnet cli完成建立WebApi專案
1 | # 建立方案資料夾 |
安裝相關套件
安裝相關套件,相關套件清單如下:
RefitRefit.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的各種用法。
參考