42 lines
1.6 KiB
TypeScript
42 lines
1.6 KiB
TypeScript
document.addEventListener('DOMContentLoaded', function () {
|
|
const requestOptions: RequestInit = {
|
|
method: 'GET',
|
|
headers: { 'Content-Type': 'application/json' },
|
|
};
|
|
|
|
fetch('/doxme/', requestOptions) //call api
|
|
.then((response) => response.json())
|
|
.then((jsonResponse) => {
|
|
const user_ip: string | null = jsonResponse.ip_info.ip;
|
|
const user_country: string | null = jsonResponse.ip_info.country;
|
|
const user_region: string | null = jsonResponse.ip_info.country_code;
|
|
|
|
// Update the HTML elements with the fetched information
|
|
document.getElementById('ip').textContent = `${user_ip}`;
|
|
document.getElementById('country').textContent = `${user_country}`;
|
|
document.getElementById('region').textContent = `${user_region}`;
|
|
|
|
console.log('user_ip:', user_ip);
|
|
console.log('couintry:', user_country);
|
|
console.log('region:', user_region);
|
|
|
|
// IPIS api
|
|
const city = jsonResponse.ipis.location.city;
|
|
const state = jsonResponse.ipis.location.state;
|
|
const isp = jsonResponse.ipis.company.name;
|
|
const longitude = jsonResponse.ipis.location.longitude;
|
|
|
|
console.log('city', city);
|
|
console.log('state', state);
|
|
console.log('isp', isp);
|
|
console.log('longitude', longitude);
|
|
|
|
document.getElementById('city').textContent = `${city}`;
|
|
document.getElementById('state').textContent = `${state}`;
|
|
// document.getElementById('isp').textContent = `${longitude}`;
|
|
})
|
|
.catch((error) => {
|
|
console.error('Error fetching IP information:', error);
|
|
});
|
|
});
|