Update file tmdb.js

This commit is contained in:
2025-01-04 13:13:46 +00:00
parent eb0c51c611
commit c356c3a241

View File

@@ -30,23 +30,34 @@ class TMDBClient {
async makeRequest(method, endpoint, params = {}) { async makeRequest(method, endpoint, params = {}) {
try { try {
console.log('TMDB Request:', { method, endpoint, params }); // Убедимся, что параметры запроса корректны
const requestParams = {
...params,
language: 'ru-RU',
region: 'RU'
};
console.log('TMDB Request:', {
method,
endpoint,
params: requestParams
});
const response = await this.client({ const response = await this.client({
method, method,
url: endpoint, url: endpoint,
params: { params: requestParams
...params,
language: 'ru-RU',
region: 'RU'
}
}); });
console.log('TMDB Response:', { console.log('TMDB Response:', {
endpoint, endpoint,
requestParams,
status: response.status, status: response.status,
page: response.data.page, page: response.data.page,
totalPages: response.data.total_pages, totalPages: response.data.total_pages,
resultsCount: response.data.results?.length resultsCount: response.data.results?.length
}); });
return response; return response;
} catch (error) { } catch (error) {
console.error('TMDB Error:', { console.error('TMDB Error:', {
@@ -69,6 +80,8 @@ class TMDBClient {
async searchMovies(query, page = 1) { async searchMovies(query, page = 1) {
const pageNum = parseInt(page, 10) || 1; const pageNum = parseInt(page, 10) || 1;
console.log('Searching movies:', { query, page: pageNum });
const response = await this.makeRequest('GET', '/search/movie', { const response = await this.makeRequest('GET', '/search/movie', {
query, query,
page: pageNum, page: pageNum,
@@ -99,38 +112,58 @@ class TMDBClient {
async getPopularMovies(page = 1) { async getPopularMovies(page = 1) {
const pageNum = parseInt(page, 10) || 1; const pageNum = parseInt(page, 10) || 1;
console.log('Getting popular movies for page:', pageNum); console.log('Getting popular movies:', { page: pageNum });
const response = await this.makeRequest('GET', '/movie/popular', { page: pageNum });
const response = await this.makeRequest('GET', '/movie/popular', {
page: pageNum
});
console.log('Popular movies response:', {
requestedPage: pageNum,
returnedPage: response.data.page,
totalPages: response.data.total_pages,
resultsCount: response.data.results.length
});
const data = response.data; const data = response.data;
data.results = data.results.map(movie => ({ data.results = data.results.map(movie => ({
...movie, ...movie,
poster_path: this.getImageURL(movie.poster_path, 'w500'), poster_path: this.getImageURL(movie.poster_path, 'w500'),
backdrop_path: this.getImageURL(movie.backdrop_path, 'original') backdrop_path: this.getImageURL(movie.backdrop_path, 'original')
})); }));
return data; return data;
} }
async getTopRatedMovies(page = 1) { async getTopRatedMovies(page = 1) {
const pageNum = parseInt(page, 10) || 1; const pageNum = parseInt(page, 10) || 1;
const response = await this.makeRequest('GET', '/movie/top_rated', { page: pageNum }); const response = await this.makeRequest('GET', '/movie/top_rated', {
page: pageNum
});
const data = response.data; const data = response.data;
data.results = data.results.map(movie => ({ data.results = data.results.map(movie => ({
...movie, ...movie,
poster_path: this.getImageURL(movie.poster_path, 'w500'), poster_path: this.getImageURL(movie.poster_path, 'w500'),
backdrop_path: this.getImageURL(movie.backdrop_path, 'original') backdrop_path: this.getImageURL(movie.backdrop_path, 'original')
})); }));
return data; return data;
} }
async getUpcomingMovies(page = 1) { async getUpcomingMovies(page = 1) {
const pageNum = parseInt(page, 10) || 1; const pageNum = parseInt(page, 10) || 1;
const response = await this.makeRequest('GET', '/movie/upcoming', { page: pageNum }); const response = await this.makeRequest('GET', '/movie/upcoming', {
page: pageNum
});
const data = response.data; const data = response.data;
data.results = data.results.map(movie => ({ data.results = data.results.map(movie => ({
...movie, ...movie,
poster_path: this.getImageURL(movie.poster_path, 'w500'), poster_path: this.getImageURL(movie.poster_path, 'w500'),
backdrop_path: this.getImageURL(movie.backdrop_path, 'original') backdrop_path: this.getImageURL(movie.backdrop_path, 'original')
})); }));
return data; return data;
} }