fruworg.github.io/static/js/ip.js
2023-08-02 20:40:25 +06:00

45 lines
1.1 KiB
JavaScript

function fetchIPDetails(ip) {
const url = `https://ipapi.co/${ip}/json`;
return fetch(url)
.then((response) => response.json())
.then((data) => {
return {
ip: data.ip,
asn: data.asn,
countryCode: data.country_code,
city: data.city,
org: data.org,
};
})
.catch((error) => {
console.error("Error fetching IP details:", error);
return null;
});
}
function updateDetailsOnPage(ipDetails) {
if (ipDetails) {
const ipElement = document.getElementById("ip");
ipElement.textContent = `${ipDetails.ip}, ${ipDetails.asn}`;
const countryElement = document.getElementById("country");
countryElement.textContent = `${ipDetails.countryCode}, ${ipDetails.city}, ${ipDetails.org}`;
}
}
function getIPAddress() {
fetch("https://api.ipify.org?format=json")
.then((response) => response.json())
.then((data) => {
const userIP = data.ip;
fetchIPDetails(userIP).then((ipDetails) => {
updateDetailsOnPage(ipDetails);
});
})
.catch((error) => {
console.error("Error fetching IP:", error);
});
}
getIPAddress();