Привет ребзя! Захостил свою приложуху на гитхаб пейджес, в приложухе есть запросы на api по прогнозу погоды! Локально все нормально работет через http протокол любыми методами, $.ajax, getJSON и через нативный XMLHTTPRequest . Заливая на гитхаб юзал протокол https , перепробовал все перечисленные методы - не работет, ошибка 0, я так понял не может достучатся до сервака. Код запроса через аджакс и через нативный запрос прилагаю. Кто что знает по этому поводу?
Запрос через getJSON
export function apiRequest(settings) {
let url;
//if user accept share his coordinates - use request by coordinates
//if denided, suggest to user search by city name
if(typeof settings === "string"){
url = `https://api.openweathermap.org/data/2.5/forecast?q=${settings}`
}else{
url = `https://api.openweathermap.org/data/2.5/forecast?lat=${settings.lat}&lon=${settings.lon}` ;
}
return new Promise((resolve, reject) => {
$.getJSON(url, function (data) {
resolve(data);
})
.fail(function (data) {
if(data.status == 404){
alert("404 Not found your city")
}else{
alert(`Cant access to server. Request status: ${data.status}.`)
}
reject();
});
})
}
Запрос нативным способом
export function apiRequest(settings) {
let url;
//if user accept share his coordinates - use request by coordinates
//if denided, suggest to user search by city name
if(typeof settings === "string"){
url = `https://api.openweathermap.org/data/2.5/forecast?q=${settings}`
}else{
url = `https://api.openweathermap.org/data/2.5/forecast?lat=${settings.lat}&lon=${settings.lon}` ;
}
return new Promise((resolve, reject) => {
let xhr = new XMLHttpRequest();
xhr.open("GET", url, false);
xhr.send();
if( xhr.status != 200 ){
alert(`Error! Cant get response from server! ${xhr.status} - ${xhr.statusText}`);
reject();
}else{
let data = JSON.parse(xhr.responseText);
resolve(data);
}
})
}