我有一个带有巨型Google地图的网络应用程序。当用户在地图上平移和缩放时,通过AJAX调用动态加载点,其中包括视口边界(NE和SW角坐标)以及一些其他各种参数。
如何缓存这些积分请求?问题是参数是高度可变的并且(最坏的)不是离散的,即具有许多小数位的浮点数。我正在使用ASP.NET-MVC / C#/ LINQ2SQL / SQL-Server,但问题与该平台无关。
这是相关方法的签名:
[AcceptVerbs(HttpVerbs.Post)]
public JsonResult Data(string date, string categories,
string ne_lat, string ne_lng,
string sw_lat, string sw_lng)
答案 0 :(得分:0)
你可能会以错误的方式解决这个问题。尝试将图层作为GGeoXML(或KML)加载,而不是作为标记的自定义请求,然后Google API将处理要显示的点和缓存。
var myLatlng = new google.maps.LatLng(49.496675,-102.65625);
var myOptions = {
zoom: 4,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
var georssLayer = new google.maps.KmlLayer('http://api.flickr.com/services/feeds/geo/?g=322338@N20〈=en-us&format=feed-georss');
georssLayer.setMap(map);
请参阅http://code.google.com/apis/maps/documentation/v3/examples/layer-georss.html
如果你需要刷新点数,那么在URL的末尾添加一个(假的或时间戳)参数