Web アプリケーションを作成しようとしていますが、API に接続したいと考えています。ファイルにベースアドレスがありStartup.cs
ます:
services.AddHttpClient("API Client", client =>
{
client.BaseAddress = new Uri("https://icanhazdadjoke.com/");
client.DefaultRequestHeaders.Add("Accept", "application/json");
});
/search
しかし、URLアドレスにaを追加して、プログラムで変更したいと思います。私は使用UriBuilder
していますが、次のようになります。
string responseBody = "";
var client = _httpClientFactory.CreateClient("API Client");
var builder = new UriBuilder(client.GetAsync("") + "/search");
var query = HttpUtility.ParseQueryString(builder.Query);
query.Add("term", searchedTerm);
query.Add("limit", jokesPerPage);
builder.Query = query.ToString();
string url = builder.ToString();
responseBody = await client.GetStringAsync(url);
return JsonConvert.DeserializeObject<JokeModel>(responseBody);
エラーが発生しました:
UriFormatException: 無効な URI: ホスト名を解析できませんでした。
どうすればこれを修正できますか?