如何使用javascript从当前位置查找用户电话国家代码

Posted

技术标签:

【中文标题】如何使用javascript从当前位置查找用户电话国家代码【英文标题】:How to find a user phone country code form current location using javascript 【发布时间】:2016-02-16 16:30:18 【问题描述】:

使用 JS,在 wab 浏览器上。不是本地人或电话差距或那种, 有人知道如何通过他/她的位置找到移动用户的“电话国家代码”吗?不想知道号码或任何类似的东西,只是从设备位置获取电话国家代码。

原生开发者有那个 API,为什么网页没有?

googles GeoName API 不会从我阅读的内容中返回此内容。而且我找不到任何通过地理位置获取国家电话代码的 API。

奇怪的是,我找不到任何与此相同的问题。

【问题讨论】:

尝试使用 HTM5 地理位置:w3schools.com/html/html5_geolocation.asp 10x,地理定位返回很多东西,我从那里取了 long 和 lat,但从我读过的内容来看,它没有返回电话代码号码(那个 3 位数的号码,在大多数情况下)情况下,在电话号码之前),我需要从其他一些 api 获取它,只是找不到合适的 【参考方案1】:

您需要做的就是获取客户的国家/地区名称,然后将其与包含该国家/地区电话的数据库进行匹配。

这是数据库: https://gist.github.com/adhipg/1600028

这是获取客户所在国家/地区的代码:

if (navigator.geolocation) 
    navigator.geolocation.getCurrentPosition(function(position) 
        $.getJSON('http://ws.geonames.org/countryCode', 
            lat: position.coords.latitude,
            lng: position.coords.longitude,
            type: 'JSON'
        , function(result) 
            alert(result.countryName);
        );
    );
​

如果您不想在最后一段代码中使用用户名,您可以使用以下代码:

$.get("http://ipinfo.io", function(response) 
    console.log(response.city, response.country);
, "jsonp");

【讨论】:

10 倍。 'ws.geonames.org/countryCode' 的问题是它要求输入用户名,如果我写下我的 google api 用户名,每个对 JS 有任何了解的人都可以获取并使用它......所以这个 API 对我没有帮助客户端代码......还是我错了? @Erez 刚刚编辑了答案。您将找到另一个选项,因此您不必使用您的用户名。 @Erez 没关系。好像datasciencetoolkit.org/coordinates2politics挂了,你可以试试用demo作为用户名。 @Erez 刚刚再次更新了第二段代码,应该可以!您不需要使用地理定位,但它可以为您提供您想要的。这里还有一个更详细的例子:jsfiddle.net/zK5FN/2 谢谢,我将您的应用程序标记为正确,但使用服务器方法获取国家/地区名称并使用国家/地区表拨打国家/地区代码以获取代码

以上是关于如何使用javascript从当前位置查找用户电话国家代码的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 JavaScript 制作用户当前位置的谷歌地图

如何从Azure获取当前的WindowsIdentity

是否可以通过他在 ios 中的电话号码跟踪用户位置?

如何使用 javascript 从 Firebase 电话身份验证中删除验证码?

如何在默认导航一个 Geopoint 中设置用户当前位置?

从当前位置IOS查找自动完成结果位置的距离