i have a node server that fetchs api from NASA apoc api i want the node server to make a request evrey 24 hours and get the latest JSON ive tried to set an interval via function and it didn't work
import http from 'http';
import fetch from 'node-fetch';
import "./schema.mjs"
import { lastSol } from './schema.mjs';
const hostname = 'localhost';
const port = 3001;
const server = http.createServer(async (req, res) => {
res.statusCode = 200;
res.setHeader('Access-Control-Allow-Origin', '*'); // allow all domains to access the data
res.setHeader('Access-Control-Allow-Methods', 'OPTIONS, GET'); // allow get domains to access the data
res.setHeader('Access-Control-Max-Age', 2592000);
res.setHeader('Content-Type', 'application/json'); // set the content type to json
let apiURL = 'https://api.nasa.gov/planetary/apod?api_key=XXXX';
const response = await fetch(apiURL); // fetching the data from the api
const apod = await response.json();
function callApiEveryCSeconds(n) {
setInterval(apod, n * 1000);
}
callApiEveryCSeconds(1);
res.end(JSON.stringify(callApiEveryCSeconds)); // return JSON response
});
console.log(lastSol())
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
Comments
Post a Comment