получить JSON API URL Параметры - PullRequest
0 голосов
/ 17 января 2020

Я близок к завершению своего проекта и пытаюсь создать URL-адрес, чтобы сделать вызов get JSON, но получаю ошибку 404, из-за которой мой URL-адрес API неправильно форматируется. Я посмотрел несколько видео на YouTube, искал этот сайт и подумал, что он написан правильно, но я не могу определить, что я сделал неправильно.

Вот мой сценарий

$(() => {
  var api = 'https://api.worldweatheronline.com/premium/v1/marine.ashx?&q=';
  var wwolat = 'document.querySelector("#lat"),';
  var wwolng = 'document.querySelector("#lng")';
  var apikey = '&key=MY_KEY';
  var format = '&format';
  var url = api + wwolat + wwolng + apikey + format;

  $.getJSON('url', function(data) {
    console.log(data);

    var date24 = data.data.weather[1].date;
    var air24 = data.data.weather[1].hourly[4].tempF;
    var wnsd24 = data.data.weather[1].hourly[4].windspeedMiles;
    var wndr24 = data.data.weather[1].hourly[4].winddir16Point;
    var height1 = data.data.weather[1].hourly[4].swellHeight_ft;
    var wvht24 = Math.floor(height1);
    var wvdr24 = data.data.weather[1].hourly[4].swellDir16Point;
    var per1 = data.data.weather[1].hourly[4].swellPeriod_secs;
    var wvpd24 = Math.floor(per1);
    var cloud24 = data.data.weather[1].hourly[4].cloudcover;

    $(".date24").append(date24);
    $(".air24").append(air24);
    $(".wnsd24").append(wnsd24);
    $(".wndr24").append(wndr24);
    $(".wvht24").append(wvht24);
    $(".wvdr24").append(wvdr24);
    $(".wvpd24").append(wvpd24);
    $(".cloud24").append(cloud24);

    var date48 = data.data.weather[2].date;
    var air48 = data.data.weather[2].hourly[4].tempF;
    var wnsd48 = data.data.weather[2].hourly[4].windspeedMiles;
    var wndr48 = data.data.weather[2].hourly[4].winddir16Point;
    var height2 = data.data.weather[2].hourly[4].swellHeight_ft
    var wvht48 = Math.floor(height2);
    var wvdr48 = data.data.weather[2].hourly[4].swellDir16Point;
    var per2 = data.data.weather[2].hourly[4].swellPeriod_secs
    var wvpd48 = Math.floor(per2);
    var cloud48 = data.data.weather[2].hourly[4].cloudcover;

    $(".date48").append(date48);
    $(".air48").append(air48);
    $(".wnsd48").append(wnsd48);
    $(".wndr48").append(wndr48);
    $(".wvht48").append(wvht48);
    $(".wvdr48").append(wvdr48);
    $(".wvpd48").append(wvpd48);
    $(".cloud48").append(cloud48);

  });
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

1 Ответ

0 голосов
/ 17 января 2020

В вашем вызове $.getJSON заключено url в кавычки. Вам необходимо удалить кавычки, чтобы их можно было интерпретировать как переменную, иначе это будет интерпретироваться как строка.

$.getJSON(url, ... )
...