2021年1月6日星期三

SyntaxError: Unexpected end of JSON input at JSON.parse (

Im trying to make a weather app and I'm using a weather API to get the information but this error shows up when I'm trying to parse the JSON data: SyntaxError: Unexpected end of JSON input at JSON.parse (<anonymous>) at IncomingMessage.<anonymous> edit: I need to get the lat and lon values from an https request. I tried returning it but it will still say lon and lat is undefined. here is the code:

const express = require('express');  const app = express();  const bodyParser = require('body-parser');  const https = require('https');  const { static, response } = require('express');  require('dotenv').config();      app.use(bodyParser.urlencoded({extended:true}));  app.use(express.static('public'))    app.listen(3000, ()=>{    console.log("server is running on port 3000")  })    app.get('/', (req,res)=>{    res.sendFile(__dirname+'/index.html')  })    app.post('/', (req,res)=>{        let apiKeyLocationIQ = process.env.API_KEY_LOCATIONIQ;    let apiKeyWeather = process.env.API_KEY_WEATHER;    let cityLocationIQ = req.body.citySearch;    let urlLocationIQ = "https://api.locationiq.com/v1/search.php?format=JSON&key="+apiKeyLocationIQ+"&q="+cityLocationIQ+"&limit=1";    https.get(urlLocationIQ, function(response){      response.on("data",function(data){        let locationIQ = JSON.parse(data);        const lat= locationIQ[0].lat;        const lon= locationIQ[0].lon;        const cityName = locationIQ[0].display_name;      })    })      let urlWeather = 'https://api.openweathermap.org/data/2.5/onecall?&lat='+lat+'&lon='+lon+'&exclude=alerts,minutely&units=metric&appid='+apiKeyWeather+'&lang=en&cnt=7';    https.get(urlWeather, function(response){      response.on("data",function(data){        let weatherData = JSON.parse(data);        console.log(weatherData);              })    })      })  
https://stackoverflow.com/questions/65605567/syntaxerror-unexpected-end-of-json-input-at-json-parse-anonymous-at-incomin January 07, 2021 at 09:42AM

没有评论:

发表评论