load trending images from tmdb at startup
- need TMDB_API_KEY as environment variable - mount /cache for data persistence Signed-off-by: Peter Siegmund <developer@mars3142.org>
This commit is contained in:
39
server/cinema/lib/common/dio_module.dart
Normal file
39
server/cinema/lib/common/dio_module.dart
Normal file
@@ -0,0 +1,39 @@
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:cinema/feature/version/version.dart';
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:injectable/injectable.dart';
|
||||
|
||||
const dioAPI = 'api';
|
||||
const dioIMAGES = 'images';
|
||||
|
||||
@module
|
||||
abstract class DioModule {
|
||||
@Named(dioAPI)
|
||||
@lazySingleton
|
||||
Dio get apiDio =>
|
||||
Dio( // Der Getter selbst wird annotiert und gibt die Instanz zurück
|
||||
BaseOptions(
|
||||
baseUrl: 'https://api.themoviedb.org/3',
|
||||
connectTimeout: const Duration(seconds: 10),
|
||||
receiveTimeout: const Duration(seconds: 10),
|
||||
headers: {
|
||||
'Authorization': 'Bearer ${Platform.environment['TMDB_API_KEY']}',
|
||||
'Content-Type': 'application/json',
|
||||
'Accept': 'application/json',
|
||||
'User-Agent': 'Cinema Service (v${Version().appVersion})'
|
||||
},
|
||||
),
|
||||
);
|
||||
|
||||
@Named(dioIMAGES)
|
||||
@lazySingleton
|
||||
Dio get imagesDio =>
|
||||
Dio( // Der Getter selbst wird annotiert und gibt die Instanz zurück
|
||||
BaseOptions(
|
||||
baseUrl: 'https://image.tmdb.org/t/p/original',
|
||||
connectTimeout: const Duration(seconds: 10),
|
||||
receiveTimeout: const Duration(seconds: 10),
|
||||
),
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user