我有自己的OSM服务器,然后是我的webapp的Tomcat后端。
我使用传单加载像这样的图块:http://MAP_SERVER_IP/tiles/{z}/{x}/{y}.png
但我希望请求类似于:http://APP_SERVER/webapp/validation_servlet?z,x,y
这种方式' validation_servlet'可以验证请求,然后将响应作为真实网址的内容:http://MAP_SERVER_IP/tiles/{z}/{x}/{y}.png
我尝试使用重定向,但似乎传单不遵循重定向。
此代码是validation_servlet的响应:
<html><head><meta http-equiv="refresh" content="0; url=http://MAP_SERVER_IP/tiles/'+trim(&x)+'/'+trim(&y)+'/'+trim(&z)+'.png" /></head></html>
其中&amp; x,&amp; y和&amp; z是从传单请求接收的参数。该URL在浏览器中正常工作,并遵循重定向。但是从传单来看并没有。
此外,我不希望APP_SERVER下载磁贴然后提供它。
目标是确保&#39;访问我的磁贴服务器。所以永远不应该看到真正的磁贴网址。
任何想法???
提前致谢!
答案 0 :(得分:1)
只需定义您的L.TileLayer
赞:
var tiles = L.tileLayer('http://APP_SERVER/webapp/validation_servlet?{z},{x},{y}');
tiles.addTo(map);
你也指出:
目标是确保&#39;访问我的磁贴服务器。所以永远不应该看到真正的磁贴网址。
[...]
此外,我不希望APP_SERVER下载磁贴然后提供它。
请注意,这两个目标无法实现。您可以代理磁贴(从APP_SERVER
获取并隐藏其来源),也可以重定向到磁贴(保存APP_SERVER
一些带宽和资源,但将最终磁贴URL发送到浏览器)。