diff --git a/Server/index.js b/Server/index.js index f250513..3da4460 100644 --- a/Server/index.js +++ b/Server/index.js @@ -32,23 +32,46 @@ app.get("/index", async (req, res) => { }); app.get("/news", async (req, res) => { - var category = "general"; - var API_KEY = process.env.API_KEY; + // categories = [business, entertainment, general, health, science, sports, technology] + var API_KEY = process.env.API_KEY; + var email = req.params.email; + var details = await User.findOne({ email }); + var data_json = []; + + if (details !== null) { + for (var x of Object.keys(details["userPreference"])) { + var category = details["userPreference"][x]; + console.log(category); + if (category === true) { + var uri = `https://newsapi.org/v2/top-headlines?country=us&category=${category}&apiKey=${API_KEY}`; + res.header("Access-Control-Allow-Origin", "*"); + + axios.get(uri).then(function (response) { + var data = response.data; + data_json.push(data); + }); + } + } + res.status(200).json(data_json); + } else res.status(401).json({ message: "User not found" }); + }); +// var category = "general"; +// var API_KEY = process.env.API_KEY; // categories = [business, entertainment, general, health, science, sports, technology] - var uri = `https://newsapi.org/v2/top-headlines?country=us&category=${category}&apiKey=${API_KEY}`; - res.header("Access-Control-Allow-Origin", "*"); - - axios - .get(uri) - .then(function (response) { - var data = response.data; - res.status(200).json({ data }); - }) - .catch(function (error) { - console.log(error); - res.status(400).json({ error }); - }); -}); +// var uri = `https://newsapi.org/v2/top-headlines?country=us&category=${category}&apiKey=${API_KEY}`; +// res.header("Access-Control-Allow-Origin", "*"); + +// axios +// .get(uri) +// .then(function (response) { +// var data = response.data; +// res.status(200).json({ data }); +// }) +// .catch(function (error) { +// console.log(error); +// res.status(400).json({ error }); +// }); +//}); app.get("/news/:email", async (req, res) => { // categories = [business, entertainment, general, health, science, sports, technology]