繁体   English   中英

如何使用 Node.Js 创建地理位置登录系统

[英]how do create a geo location login system using Node.Js

我想创建一个系统,只有当用户在给定位置的半径内时,用户才能登录。
我正在使用 node.js、express.js、MongoDB。
有人可以指导我应该使用哪些软件包/服务以及如何解决这个问题

您必须与覆盖区域的 geojson 建立边界。 要知道您的用户位置,首先要使用他们使用的设备获取用户的当前位置。 将其存储在 MongoDB 中。 获取用户的纬度或经度后,使用多边形查找npm package 来识别用户是否在您的多边形半径内。

如果用户在该位置,您可以创建一个 function,如下所示 -

    let geoJsonMapData =
    {
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {},
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              90.48509359359743,
              23.823275544984423
            ],
            [
              90.33422470092773,
              24.011030495565834
            ],
            [
              90.32435417175293,
              23.77529123645138
            ],
            [
              90.50283908843996,
              23.580546882813223
            ],
            [
              90.50519943237305,
              23.592031281422017
            ],
            [
              90.47208085656167,
              23.80909744710711
            ],
            [
              90.48509359359743,
              23.823275544984423
            ]
          ]
        ]
      }
    }
  ]
};
const check_in_radius_or_not = (longitude, latitude) =>{
            var lookup = new PolygonLookup( geoJsonMapData );
            var poly = lookup.search( longitude, latitude );
            
            if(poly){
                return 1;
            }else{
                return 0;
            }
        }

如果 function 返回 1,它们将在半径内并且能够登录,否则如果返回 0,它们不在给定边界内并且无法登录。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM