React Native
React Native
ipdata.co IPv4 Geolocation Lookup
See more Geolocation Examples
Demonstrates how to lookup Geolocation data for an IPv4 address using the ipdata.co API.Chilkat React Native Downloads
import { Http, JsonObject } from '@chilkat/react-native'
async function chilkatExample() {
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
const http = new Http();
let jsonStr: string;
try {
jsonStr = await http.quickGetStrAsync('https://api.ipdata.co/149.250.207.170?api-key=MY_API_KEY');
} catch {
console.log(http.lastErrorText);
return;
}
const json = new JsonObject();
json.emitCompact = false;
json.load(jsonStr);
console.log(json.emit());
// Sample output:
// Use this online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
// {
// "ip": "149.250.207.170",
// "is_eu": true,
// "city": null,
// "region": null,
// "region_code": null,
// "country_name": "Germany",
// "country_code": "DE",
// "continent_name": "Europe",
// "continent_code": "EU",
// "latitude": 51.2993,
// "longitude": 9.491,
// "asn": "AS15854",
// "organisation": "EntServ Deutschland GmbH",
// "postal": null,
// "calling_code": "49",
// "flag": "https://ipdata.co/flags/de.png",
// "emoji_flag": "\ud83c\udde9\ud83c\uddea",
// "emoji_unicode": "U+1F1E9 U+1F1EA",
// "languages": [
// {
// "name": "German",
// "native": "Deutsch"
// }
// ],
// "currency": {
// "name": "Euro",
// "code": "EUR",
// "symbol": "\u20ac",
// "native": "\u20ac",
// "plural": "euros"
// },
// "time_zone": {
// "name": "Europe/Berlin",
// "abbr": "CEST",
// "offset": "+0200",
// "is_dst": true,
// "current_time": "2019-04-20T23:54:30.715507+02:00"
// },
// "threat": {
// "is_tor": false,
// "is_proxy": false,
// "is_anonymous": false,
// "is_known_attacker": false,
// "is_known_abuser": false,
// "is_threat": false,
// "is_bogon": false
// },
// "count": "2"
// }
let i = 0;
let name = '';
let native = '';
const ip = json.stringOf('ip');
const city = json.stringOf('city');
const region = json.stringOf('region');
const regionCode = json.stringOf('region_code');
const countryName = json.stringOf('country_name');
const countryCode = json.stringOf('country_code');
const continentName = json.stringOf('continent_name');
const continentCode = json.stringOf('continent_code');
const latitude = json.stringOf('latitude');
const longitude = json.stringOf('longitude');
const asn = json.stringOf('asn');
const organisation = json.stringOf('organisation');
const postal = json.stringOf('postal');
const callingCode = json.stringOf('calling_code');
const flag = json.stringOf('flag');
const emojiFlag = json.stringOf('emoji_flag');
const emojiUnicode = json.stringOf('emoji_unicode');
const currencyName = json.stringOf('currency.name');
const currencyCode = json.stringOf('currency.code');
const currencySymbol = json.stringOf('currency.symbol');
const currencyNative = json.stringOf('currency.native');
const currencyPlural = json.stringOf('currency.plural');
const timeZoneName = json.stringOf('time_zone.name');
const timeZoneAbbr = json.stringOf('time_zone.abbr');
const timeZoneOffset = json.stringOf('time_zone.offset');
const timeZoneCurrentTime = json.stringOf('time_zone.current_time');
const count = json.stringOf('count');
i = 0;
const countI = json.sizeOfArray('languages');
while (i < countI) {
json.i = i;
name = json.stringOf('languages[i].name');
native = json.stringOf('languages[i].native');
i++;
}
}