如何基于IP(国家代码)确定默认的Accept-Language头?
我想增强我网站的防垃圾邮件能力。我发现被禁止的机器人在发送请求时不会更改它们的Accept-Language和Accept-Charset这两个HTTP头信息(所以大多数垃圾邮件都是用windows-1251这个字符集发送的)。我明白可能会有一些正常用户有不寻常的偏好,但无论如何,我该如何确定在某个特定国家,哪些字符集和语言头信息是最常见的呢?谢谢!
1 个回答
1
这个回答分为两个部分:首先是确定用户来自哪里,其次是他们说什么语言。要知道用户来自哪个地方,你可以使用一个叫做 hostip.info 的服务,它提供一个接口(API),你只需要输入一个IP地址,它就会告诉你对应的国家代码。接下来,你需要一个列表,比如 这个,来把国家代码转换成语言代码。你可以使用一个完整的数据库,或者一个简单的字典来存储这些对应关系。