如何使用地理位置获取城市名称并重定向到该城市的 URL?

Posted

技术标签:

【中文标题】如何使用地理位置获取城市名称并重定向到该城市的 URL?【英文标题】:How to get city name using geolocation and redirect to an URL for that city? 【发布时间】:2018-02-02 19:14:08 【问题描述】:

例如,如果用户访问http://example.com,我根据地理位置将“纽约”作为城市,则将用户重定向到http://example.com/NY

如果是“洛杉矶”重定向到http://example.com/LA,如果是任何其他城市,用户将被定向到第三个 URL。

我该怎么做?

这是我当前的尝试/代码:

<!DOCTYPE html>
<html>
<head>
    <title>GEOIP DB - jQuery example</title>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
</head>
<body>
    <div>Country: <span id="country"></span>
    <div>State: <span id="state"></span>
    <div>City: <span id="city"></span>
    <div>Latitude: <span id="latitude"></span>
    <div>Longitude: <span id="longitude"></span>
    <div>IP: <span id="ip"></span>
    <script>
        $.ajax(
            url: "https://geoip-db.com/jsonp",
            jsonpCallback: "callback",
            dataType: "jsonp",
            success: function( location ) 
                $('#country').html(location.country_name);
                $('#state').html(location.state);
                $('#city').html(location.city);
                $('#latitude').html(location.latitude);
                $('#longitude').html(location.longitude);
                $('#ip').html(location.IPv4);  
                $routes = "Los Angeles": "http://google.com/LA", "New York": "http://google.com/NY"
if ( routes[location.city] )  window.location.href = routes[location.city] 
            

        ); 

    </script>
</body>
</html>

【问题讨论】:

【参考方案1】:

根据我在您的代码中看到的,您必须将所需的城市添加到路线对象中,如下所示:


 "Los Angeles": "http://google.com/LA", 
 "New York": "http://google.com/NY", 
 "Other City": "http://google.com/othercity"

【讨论】:

以上是关于如何使用地理位置获取城市名称并重定向到该城市的 URL?的主要内容,如果未能解决你的问题,请参考以下文章

字典和循环

HDU 3873 Invade the Mars(带限制条件的Dijkstra)

如何在android中使用游标(sqlite查询)搜索数据库

如何在 Swift UI 中将嵌套的 JSON 值显示到选取器视图中?

使用 hasrsine() 雪花函数从最近的位置动态映射数据

使用Python获取各个城市当前的天气情况