diff options
| author | Pinapelz <donaldshan1@outlook.com> | 2023-04-04 23:47:02 -0700 |
|---|---|---|
| committer | Pinapelz <donaldshan1@outlook.com> | 2023-04-04 23:47:02 -0700 |
| commit | 998a5dc47356564413bca65c93de39be186a78f3 (patch) | |
| tree | ac91eea2c58dc865cd5825a53f31ae74381d9e88 | |
| parent | cdd56c974361ad1d00ab9669093ac6da5a9ca032 (diff) | |
Implemented passing API Key Header
| -rw-r--r-- | src/main/java/App.java | 2 | ||||
| -rw-r--r-- | src/main/java/com/pina/Holodex.java | 15 |
2 files changed, 15 insertions, 2 deletions
diff --git a/src/main/java/App.java b/src/main/java/App.java index 59002ac..87bc66d 100644 --- a/src/main/java/App.java +++ b/src/main/java/App.java @@ -11,7 +11,7 @@ public class App { public static void main( String[] args ) { - Holodex holodex = new Holodex(); + Holodex holodex = new Holodex("APIKEYHERE"); try { ChannelQueryBuilder query = new ChannelQueryBuilder(); query.setOrg("Hololive"); diff --git a/src/main/java/com/pina/Holodex.java b/src/main/java/com/pina/Holodex.java index a341cff..8f45280 100644 --- a/src/main/java/com/pina/Holodex.java +++ b/src/main/java/com/pina/Holodex.java @@ -6,6 +6,8 @@ import com.pina.query.ChannelQueryBuilder; import com.pina.query.LiveVideoQueryBuilder; import com.pina.query.VideoQueryBuilder; import com.pina.query.VideosByChannelIDQuery; +import okhttp3.OkHttpClient; +import okhttp3.Request; import retrofit2.Call; import retrofit2.Response; import retrofit2.Retrofit; @@ -17,14 +19,25 @@ import java.util.List; public class Holodex { private final HolodexService service; - public Holodex() { + public Holodex(String apiKey) { + OkHttpClient.Builder httpClient = new OkHttpClient.Builder(); + httpClient.addInterceptor(chain -> { + Request original = chain.request(); + Request request = original.newBuilder() + .header("X-APIKEY", apiKey) + .method(original.method(), original.body()) + .build(); + return chain.proceed(request); + }); Retrofit retrofit = new Retrofit.Builder() .baseUrl("https://holodex.net") .addConverterFactory(JacksonConverterFactory.create()) + .client(httpClient.build()) .build(); service = retrofit.create(HolodexService.class); } + public List<Video> getLiveVideos(LiveVideoQueryBuilder queryBuilder) throws HolodexException { Call<List<Video>> call = service.getLiveVideos(queryBuilder.getChannelId(), queryBuilder.getId(), queryBuilder.getInclude(), queryBuilder.getLang(), |
