如何使用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从当前位置查找用户电话国家代码的主要内容,如果未能解决你的问题,请参考以下文章