Вы просто делаете запрос при загрузке скрипта. Там нет призвания к этому. Когда кнопка нажата, она ссылается на функцию weather (), которую вы нам не показывали. Я предполагаю, что данный код внутри скрипта - это то, что вы хотите запустить при нажатии кнопки. Для этого вам нужно поместить его в функцию, которая запускается при нажатии. Так что-то вроде этого:
<script>
function weather(){
unirest.get("https://weatherbit-v1-mashape.p.rapidapi.com/currentlang=en&lon=<required>&lat=<required>")
.header("X-RapidAPI-Host", "weatherbit-v1-mashape.p.rapidapi.com")
.header("X-RapidAPI-Key","02f2e99835msh60df6f30e23585dp137d84jsn437639993023")
.end(function (result) { console.log(result.status, result.headers, result.body);});
}
</script>
Нажатие в теге кнопки ищет функцию, помещенную в кавычки, но не создает ее для вас.