Refit
Install Nuget Packages
Abschnitt betitelt „Install Nuget Packages“- Refit
- Refit.HttpClientFactory
Konfiguration
Abschnitt betitelt „Konfiguration“var movieDbOptions = builder.Configuration.Get<MovieDbOptions>()!;builder.Services.AddRefitClient<IMovieDbApi>() .ConfigureHttpClient(c => { c.BaseAddress = new Uri("https://api.themoviedb.org/3"); c.DefaultRequestHeaders.Add("Authorization", $"Bearer {movieDbOptions.AccessToken}"); });public interface IMovieDbApi{ [Get("/search/tv")] Task<MovieDbSearchTvSeriesDto> SearchTv(string query);
[Get("/search/movie")] Task<MovieDbSearchMovieDto> SearchMovie(string query);}public class TestEndpoint(IMovieDbApi movieDbApi) : EndpointWithoutRequest<Ok<TopRatedMoviesDto>>{ public override void Configure() { Get("test"); AllowAnonymous(); }
public override async Task<Ok<TopRatedMoviesDto>> ExecuteAsync(CancellationToken ct) { var topRatedMoviesDto = await movieDbApi.TopRatedMovies(); return TypedResults.Ok(topRatedMoviesDto); }}