[英]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.