Получение температуры и влажности из веб-API NOAA v2

Новый API NOAA говорит, что мне нужно поместить токен в заголовок, чтобы я мог отправить запрос, и он выдает мне ошибку, необходимую для токена, без него. Я ввел свой адрес электронной почты и получил токен, но я не уверен, как представить его в формате, позволяющем получить ответ.

Есть ли способ получить ответ JSON, разместив всю информацию в URL-адресе, или мне нужно создать страницу html / php? Если мне действительно нужно создать веб-страницу, есть ли библиотека, которую я могу импортировать, которая позволит мне получить JSON в java без необходимости веб-страницы?


person Mnoi    schedule 01.06.2015    source источник
comment
на этой странице также упоминается о горячем размещении жетона. Как вы звоните в службу?   -  person Guanxi    schedule 01.06.2015
comment
Ну вот в чем я не уверен; куда идет информация заголовка? В прошлых API-интерфейсах, которые я использовал, я мог отформатировать URL-адрес так, чтобы он отображал тест JSON на веб-странице. Если я смогу получить ответ на веб-странице, я смогу действовать самостоятельно.   -  person Mnoi    schedule 02.06.2015
comment
Это не может быть обновлено путем форматирования URL-адреса. Вам необходимо создать веб-запрос. используйте вызов jquery ajax для обновления заголовков запроса. api.jquery.com/jQuery.ajax   -  person Guanxi    schedule 02.06.2015
comment
Спасибо, я разберусь с этим подробнее, я не знал, с чего начать с аутентификации.   -  person Mnoi    schedule 03.06.2015


Ответы (1)


вам не нужно импортировать какую-либо библиотеку для доступа к NOAA-API, вы можете напрямую вызвать ее с помощью токена.

вам нужно будет добавить свой токен в заголовок, если вы вызываете его через вызов AJAX.

open: - http://js.do/ 1. добавить скрипт

Запустите этот код, используя значение вашего токена.

<script>
function testjson(){
    //alert("inside testjson");
    jsontest = $.ajax({
        type: 'GET',
        url:  'https://www.ncdc.noaa.gov/cdo-web/api/v2/data?datasetid=GHCND&locationid=ZIP:28801&startdate=2010-05-01&enddate=2010-05-01',

//you can use different data-set values.
   headers: {
    Token: 'provide your token here'//example:'kxhfoJOtnEuxSNnMGMMSEITkmcsAFmFT'
        },
      //  async: false,
        dataType: 'json',
        success: function (data) {
            //Do stuff with the JSON data
            alert(JSON.stringify(data));
            jsontest = data;
            console.log("data is: " + data);
        },failure: function(){
            alert("ajax failed");
        }
    });
    console.log(jsontest);  
    //console.log(jsontest[0]);
}

testjson();
</script>
person Rahul Agrawal    schedule 11.01.2017