movieController.js
1.33 KB
import fetch from "node-fetch"
export const movieInformation = async (req,res)=>{
const {id}= req.params;
const KEY= process.env.API_KEY
const data = await fetch(`https://api.themoviedb.org/3/movie/${id}?api_key=${KEY}&language=ko-KR`)
const info = await data.json();
res.render('detail.pug',{siteTitle:"movie!",pageTitle:`${info.original_title}`,info})
}
export const getDiscover = (req, res)=>{
res.render('discover',{siteTitle:"movie!"})
}
export const postDiscover = async (req, res)=>{
const {year, genre,rating} = req.body
const KEY= process.env.API_KEY
const genreData = await fetch(`https://api.themoviedb.org/3/genre/movie/list?api_key=${KEY}&language=en-US`)
const genres = await genreData.json()
const target = genres.genres.filter(index => index.name === genre)
const genreId = target[0].id
const moviesData = await fetch(`
https://api.themoviedb.org/3/discover/movie?api_key=${KEY}&language=en-US&sort_by=popularity.desc&include_adult=false&include_video=false&page=1&year=${year}&vote_average.gte=${rating}&with_genres=${genreId}&with_watch_monetization_types=flatrate`,
{
method:"GET"
})
const Result = await moviesData.json()
const movies = Result.results
console.log(movies)
return res.render(`discoverResult.pug`,{siteTitle:"movie!",movies})
}