我正在开发Rails 4 application
我尝试了很多用户国家/地区意味着用户打开了我想要获得country
的网站。
我试过
> Geocoder where too much load and not get proper output
> jQuery /Javascript code but always ask to user for share location which one is not good way
> geoip where get only ip country which always return server ip location not user browser location
任何其他方式。
由于
答案 0 :(得分:2)
我们在应用中使用了gem 'maxmind_geoip2', github: 'envato/geoip2'。
您需要一个mmdb文件,您可以从gem页面获取该文件。
将该gem配置为:
MaxmindGeoIP2.file'local_db_file.mmdb'
MaxmindGeoIP2.locale'en'#default:'ru'
之后,您可以在任何请求中使用request.remote_ip获取用户的IP。
使用MaxmindGeoIP2.locate()解析该IP。它将返回您的位置详细信息,如城市,国家,时区等。