问题标签 [geoip2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
236 浏览

python - 如何使用 GeoIP2() django 模型从 IP 地址调用中提取保存的信息以显示在我的 html 中

我已经创建了获取 IP 地址并将来自 city_data 的信息存储在 GeoIP2() 中的函数。我希望能够从 city_data 获取纬度和经度并将其显示在我的 html 页面中。

我似乎遇到的问题是我无法调用保存在用户会话模型中的任何信息。当我查看管理员以及打印出查询集时,信息就在那里

在模型中,我使用 usersession/usersessionmanager 创建了一个新会话,并将该会话与接收者一起保存

模型.py

在这里,我调用 IP 地址以及它使用 GEoIP2 存储的 city_data

实用程序.py

在这里,我为具有我测试的查询集的页面创建了一个视图,以查看数据是否存在

意见

我的假设是,这就是问题所在,我相信这是因为我可能调用了错误的东西,但我已经尝试了我能想到的每一个调用,但无法获得正确的配置来显示任何数据

html

0 投票
2 回答
1215 浏览

python - 为什么 Django 在提交表单时引发 IntegrityError:“user_id”列中的空值违反非空约束?

我有一个 UserSession 模型,它创建一个使用 IP 地址和城市数据的会话,以使用 Geip2 填充模型。我设置了一个表单,该表单采用我希望用户输入但得到的信息:

当我提交表格时。对象被创建,但表单获取的信息不会保存到对象中。

意见:

问题似乎是:

Geoip2 的用户会话调用似乎有效,但它不保存表单

表格.py

模型.py:

0 投票
1 回答
216 浏览

maxmind - Maxmind GeoIP2 DB 获取位置区域

我刚刚升级到 GeoIP2 并错过了 Region 字段。如何从 CityResponse 对象中提取区域?我正在使用 GeoLite2-City.mmdb

0 投票
0 回答
216 浏览

java - 如何在 Java 应用程序中包含 GeoLite2 数据库

我是 Java 编程新手,所以不要反对我。我正在尝试Maxmind在我的应用程序中包含一个数据库。我在处理项目时一直在使用相对路径,类似于:

这对本地开发很有效,但是我一直在努力弄清楚如何在编译项目时添加数据库文件。

关于如何做到这一点的任何想法?

0 投票
0 回答
353 浏览

php - 使用 ip 地址在数据库上查找 CIDR 并进行 closesd 匹配

对于我的系统,我喜欢进行小国位置检测。所以我找到了这个数据库: https ://github.com/datasets/geoip2

有如下值:

如果我42.76.160.0从我的 ip getenv 函数中获得一个 ip 地址,我如何使用 php 和 pdo 查找这个 ip 以匹配数据库中的正确值。

编辑:
同时我找到了一个解决方案:
我将 cidr 转换为普通的 ip 地址并进行如下查找:

在我的服务器上,我额外获得了大约 50-75 毫秒的内容负载,但这仅适用于我网站的一小部分。(设置一个已经应用 inet_aton 的表并没有太大区别)

0 投票
1 回答
900 浏览

.htaccess - GeoIP 的欧盟特定 ISO-1366-1 国家/地区代码

随着 GDPR 的临近,我编写了一个愚蠢的脚本来阻止所有欧盟国家访问网站。问题是我找不到详尽的欧盟国家代码列表。

有一个要点可以让我开始,但是,有些评论尚未实施,因此尚不清楚完整列表的外观。

https://gist.github.com/henrik/1688572

有没有人得到欧盟国家代码的完整列表,包括最外围地区、特殊情况以及我可能错过的任何其他内容?

到目前为止,我已经设法将其放在一起。

欧盟 28

AT,奥地利
BE,比利时
BG,保加利亚
HR,克罗地亚
CY,塞浦路斯
CZ,捷克共和国
DK,丹麦
EE,爱沙尼亚
FI,芬兰
FR,法国
DE,德国
GR,希腊
HU,匈牙利
IE,爱尔兰,共和国 (EIRE)
IT , 意大利
LV, 拉脱维亚
LT, 立陶宛
LU, 卢森堡
MT, 马耳他
NL, 荷兰
PL, 波兰
PT, 葡萄牙
RO, 罗马尼亚
SK, 斯洛伐克
SI, 斯洛文尼亚
ES, 西班牙
SE, 瑞典
GB, 英国(英国)

最外围地区:欧盟 (OMR) 的一部分 https://en.wikipedia.org/wiki/Special_member_state_territories_and_the_European_Union#Outermost_regions

GF, 法属圭亚那
GP, Guadeloupe
MQ, Martinique
ME, 黑山
YT, Mayotte
RE, Réunion
MF, Saint Martin

无代码, 亚速尔群岛
无代码, 加那利群岛
无代码, 马德拉

特殊情况:欧盟的一部分 https://en.wikipedia.org/wiki/Special_member_state_territories_and_the_European_Union#Special_cases_in_Europe

GI,直布罗陀
AX,奥兰群岛

No Code, Büsingen am Hochrhein
No Code, Campione d'Italia and Livigno
No Code, Ceuta and Melilla
No Code, UN Buffer Zone in Cyprus
No Code, Helgoland
No Code, Mount Athos

海外国家和地区 (OCT) https://en.wikipedia.org/wiki/Special_member_state_territories_and_the_European_Union#Overseas_countries_and_territories

PM, Saint Pierre and Miquelon
GL, Greenland
BL, Saint Bartelemey
SX, Sint Maarten
AW, Aruba
CW, Curacao
WF, Wallis and Futuna
PF, French Polynesia
NC, New Caledonia
TF, French Southern Territories
AI, Anguilla
BM, Bermuda
IO, British印度洋领地
VG、维尔京群岛、英属
KY、开曼群岛
FK、福克兰群岛(马尔维纳斯)
MS、蒙特塞拉特
PN、皮特凯恩
SH、圣赫勒拿
GS、南乔治亚岛和南桑威奇群岛
TC、特克斯和凯科斯群岛

状态(不确定这些如何适应) https://en.wikipedia.org/wiki/Microstates_and_the_European_Union

AD, Andorra
LI, Liechtenstein
MC, Monaco
SM, San Marino
VA, Vatican City

其他(不确定这些是否适合)
JE、Jersey
GG、Guernsey
GI、Gibraltar

欧盟
欧盟,欧盟(不确定这是否有用,是否保持最新?)

从这个列表中,我最终得到了以下 .htaccess 脚本来阻止欧盟访问站点。

我应该补充一点,我无意使用它,这只是配置 apache mods 和搞乱 GeoIP/MaxMind 的一个很好的练习。

虽然这种情况很荒谬,但我仍然想正确地实现它,它可能有一天对某事或某人有用。

编辑 显然不是那么荒谬,今天我已经看到大约十几家公司已经阻止了欧盟用户 o_O。

在这种特殊情况下,代码应涵盖 GDPR 适用的欧盟国家代码。我错过了什么吗?

.htaccess

更新
GDPR 也适用于欧洲经济区 (EEA) 的部分地区

IS,冰岛
LI,列支敦士登
NO,挪威

MaxMind 可以为某些欧盟 IP 返回欧盟

欧盟、欧盟

0 投票
1 回答
202 浏览

hashmap - 将 maxmind mmbd 作为 hashmap 加载到内存中的性能差异

我正在使用 GeoIP2 mmdb 文件实时查找用户的位置。但是,我希望将文件加载到内存中,然后在 hashmap 上查询,而不是每次都在数据库上查询。

有可能这样做吗。如果是,那么如何。?

此外,将整个文件加载到哈希图中会提高我的查询性能吗?

0 投票
3 回答
10263 浏览

geocoding - 如何使用maxmind从IP地址获取纬度和经度?

我一直在使用 geoip php 扩展。此扩展程序不像以前那样为我提供纬度和经度。

查看 maxmind 网站,我可以阅读:

注意:经过仔细考虑,考虑到客户的反馈,我们决定不从 GeoLite2 数据库中删除纬度和经度坐标。我们正在审查我们所有 GeoLite2 和 GeoIP 数据库中使用的坐标,以确保不存在滥用风险。

是否有其他方法(或免费替代方法)从 IP 地址获取纬度和经度?

0 投票
1 回答
30 浏览

perl - GeoIP2 模块的文档和代码概要在哪里?

我正在尝试更新旧的 Perl 脚本以使用新的 GeoIP2模块,但我在任何地方都找不到任何实际 API 调用的文档。

github、metacpan 和手册页上的 README 都是相同的,并且不包含我可以看到的任何示例代码。

0 投票
1 回答
730 浏览

java - 在 geolite2 .mmdb 文件 (JAVA) 上按城市名称查询

我正在使用 GeoLite2 通过 IP 地址获取我的 java 应用程序的位置。

我想从 GeoLite2-City.mmdb 文件中逐个城市获取国家/地区。

这是我的读者:

我通过 IP 地址获取 CityResponse,如下所示:

但我想像这样按城市获取国家/地区名称:

有没有办法做到这一点?