12,925
回編集
301行目: | 301行目: | ||
<br> | <br> | ||
==== 方法 3 : HttpClientFactory (複数のベースURI) ==== | ==== 方法 3 : HttpClientFactory (複数のベースURI) ==== | ||
* 名前付きHttpClientを使用する方法 | |||
** メリット | |||
**: 個別の設定が容易 | |||
** デメリット | |||
**: 文字列ベースの名前指定 | |||
**: 型安全性が低い | |||
*: <br> | |||
* 型付きHttpClientを使用する方法 | |||
** メリット | |||
**: 型安全性が高い | |||
**: APIごとに特化した実装が可能 | |||
**: テストが容易 | |||
** デメリット | |||
**: クラス数が増加 | |||
**: 各APIに対して個別の実装が必要 | |||
*: <br> | |||
* 動的にベースURIを切り替える方法 | |||
** メリット | |||
**: 柔軟性が高い | |||
**: 設定ファイルでの管理が容易 | |||
**: 実行時の切り替えが可能 | |||
** デメリット | |||
**: 複雑な実装 | |||
<br> | |||
<syntaxhighlight lang="json"> | |||
# 動的なベースURI切り替えで使用 | |||
# appsettings.json | |||
{ | |||
"ApiSettings": { | |||
"BaseUrls": { | |||
"github": "https://api.github.com/", | |||
"weather": "https://api.weather.com/", | |||
"other": "https://api.other.com/" | |||
} | |||
} | |||
} | |||
</syntaxhighlight> | |||
<br><br> | <br><br> | ||