很抱歉这个问题很愚蠢,但我怎么能用 C++ 做到这一点?我需要使用给定的 IP 地址获取国家名称及其 2 个字母或 3 个字母的 ISO 代码(或任何名称)。有什么方法可以轻松做到这一点?
我发现的唯一两种方法是使用 GeoIP C 库或下载免费数据库,但有什么更动态的吗?我的意思是,是否有一个带有最新数据库的免费网络服务,我可以使用 curl 或其他东西来实现我的目的?
提前致谢。
MaxMind.com公开了一组用于地理定位的Web 服务。它们不是免费的,但每次查找都很便宜。
我的一个客户使用他们的城市级查找服务,每个结果都会缓存一段合理的时间(从内存中,2 或 3 周),因为 IP 地址块不会经常更改位置。
该应用程序还计算实际查找的数量,以在订阅中剩余的数量变少时发送管理员通知,因此可以手动补足。
我还在几个应用程序中使用可下载的数据库,并通过预定的更新过程使其保持最新状态。
http://www.hostip.info提供了一个 API。