使用百度地图api通过redis实现地标存储及范围坐标点查询功能

1.首先拿到百度地图开发密钥,进入百度地图开放平台:百度地图开放平台

(1)选择开发文档>>web开发>>JavaScript API

使用百度地图api通过redis实现地标存储及范围坐标点查询功能_第1张图片

(2)需要申请密钥才可使用,点击申请密钥(申请密钥的IP白名单可以用‘ * '代替,所有网站都可用,但安全性很差,所有人都可以抓到这个ak来使用,也可以根据自己的应用场景来设置) 

使用百度地图api通过redis实现地标存储及范围坐标点查询功能_第2张图片

 2,Controller代码

public class MapController : Controller
    {
        //map视图
        public ActionResult Index()
        {
            return View();
        }
        /// 
        /// 存入坐标点
        /// 
        /// 经度
        /// 纬度
        /// 名称
        /// 
        public ActionResult Set(string Longitude, string Latitude, string Name)
        {
            //初始化redis
            CSRedis.CSRedisClient cSRedis = new CSRedis.CSRedisClient("192.168.56.131:6380,password=123456,defaultDatabase = 0");
            RedisHelper.Initialization(cSRedis);
 
            decimal Lng = decimal.Parse(Longitude);
            decimal Lat = decimal.Parse(Latitude);
            //存入坐标点
            var flag = RedisHelper.GeoAdd("zhongguo", Lng, Lat, Name);
 
            if (flag == true)
            {
                return Json(new { code = 1, message = "成功" });
            }
            else
            {
                return Json(new { code = 0, message = "提交失败" });
            }
        }
        /// 
        /// 获取半径范围内的其他坐标
        /// 
        /// 经度
        /// 纬度
        /// 半径
        /// 
        public ActionResult Get(string lng, string lat, string ran)
        {
            //初始化redis
            CSRedis.CSRedisClient cSRedis = new CSRedis.CSRedisClient("192.168.56.131:6380,password=123456,defaultDatabase = 0");
            RedisHelper.Initialization(cSRedis);
 
            decimal Lng = decimal.Parse(lng);
            decimal Lat = decimal.Parse(lat);
            decimal Ran = decimal.Parse(ran);
            var K = CSRedis.GeoUnit.km;
            //获取周边坐标点
            (string member, decimal dist, decimal longitude, decimal latitude)[] list_ = RedisHelper.GeoRadiusWithDistAndCoord("zhongguo", Lng, Lat, Ran, K);
            return Json(list_, JsonRequestBehavior.AllowGet);
        }
    }

3,view代码(注意填写上面申请的密钥)

@{
    Layout = null;
}



    
    地图展示
    
    
    
    
    
    
    
    


    
经度: 纬度: 范围:

到此这篇关于使用百度地图api通过redis实现地标存储及范围坐标点查询功能的文章就介绍到这了,更多相关百度地图api地标存储范围坐标点查询内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(使用百度地图api通过redis实现地标存储及范围坐标点查询功能)