C++
C++
ip-api.com IPv4 Geolocation Lookup
See more Geolocation Examples
Demonstrates how to lookup Geolocation data for an IPv4 address using the ip-api.com API.Chilkat C++ Downloads
#include <CkHttp.h>
#include <CkJsonObject.h>
void ChilkatSample(void)
{
bool success = false;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkHttp http;
// Lookup an IPv4 address: 149.250.207.170 (this was a randomly chosen address)
const char *jsonStr = http.quickGetStr("http://ip-api.com/json/149.250.207.170");
if (http.get_LastMethodSuccess() == false) {
std::cout << http.lastErrorText() << "\r\n";
return;
}
CkJsonObject json;
json.put_EmitCompact(false);
success = json.Load(jsonStr);
std::cout << json.emit() << "\r\n";
// Sample output:
// Use this online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
// {
// "as": "AS15854 Hewlett Packard GmbH",
// "city": "B�blingen",
// "country": "Germany",
// "countryCode": "DE",
// "isp": "Triaton Frankfurt",
// "lat": 48.6779,
// "lon": 8.97297,
// "org": "EntServ Deutschland GmbH",
// "query": "149.250.207.170",
// "region": "BW",
// "regionName": "Baden-W�rttemberg",
// "status": "success",
// "timezone": "Europe/Berlin",
// "zip": "71034"
// }
const char *as = 0;
const char *city = 0;
const char *country = 0;
const char *countryCode = 0;
const char *isp = 0;
const char *lat = 0;
const char *lon = 0;
const char *org = 0;
const char *query = 0;
const char *region = 0;
const char *regionName = 0;
const char *status = 0;
const char *timezone = 0;
const char *zip = 0;
as = json.stringOf("as");
city = json.stringOf("city");
country = json.stringOf("country");
countryCode = json.stringOf("countryCode");
isp = json.stringOf("isp");
lat = json.stringOf("lat");
lon = json.stringOf("lon");
org = json.stringOf("org");
query = json.stringOf("query");
region = json.stringOf("region");
regionName = json.stringOf("regionName");
status = json.stringOf("status");
timezone = json.stringOf("timezone");
zip = json.stringOf("zip");
}