不使用geoIpLookup即可自动设置国际电话输入代码区域

时间:2018-09-05 10:13:24

标签: angular geolocation ip intl-tel-input

我正在使用intl-tel-input模块来验证表单的电话字段,该表单将由不同国家/地区的商店员工填写。

验证有效,但是一旦商店员工登录到具有良好国家/地区的表单后,我就需要自动设置代码区域(例如,位于巴黎的商店需要使用法语代码区域)。

目前,我正在使用具有以下功能的geoIpLookup:

geoIpLookup: function(callback) {
            fetch('https://ipinfo.io/json', {
                cache: 'reload'
            }).then(response => {
                if ( response.ok ) {
                     return response.json()
                }
                throw new Error('Failed: ' + response.status)
            }).then(ipjson => {
                console.log('IPINFO SUCCESS')
                callback(ipjson.country)
            }).catch(e => {
                console.log('IPINFO ERROR')
                callback('fr')
            })
        }

它可以工作,但是geoIpLookup使用wifi检查设备的IP。但是商店中的员工将使用VPN,该VPN可能显示的国家/地区与商店所在的国家/地区不同。

需要明确的是,该商店可能在法国,但IP地址将位于西班牙。因此,不会显示良好的代码区域。

还有另一种不用IP地址自动设置它的方法吗?

希望我说得很清楚,在此先感谢。

0 个答案:

没有答案