开篇的由来是一个码友私聊我:
![1cdc7be36513d6a4ed01063324164c87.gif](https://i-blog.csdnimg.cn/blog_migrate/e18272fdd598850f42ae12e02f9d16e4.gif)
我也是好久没有去玩Arcgis的相关东西了,就会个最原始的方式也是最基本的流程:
![29012a7ea68b0954be4dd8b8fe03fe22.png](https://i-blog.csdnimg.cn/blog_migrate/0351e9ed32792a7dce0f9210f00c4eef.jpeg)
1、正常流程是底图加载出来,结果发现没有底图,而请求的瓦片地址一直都在更新:
![9e37edab569a2d3ae4c2d4fb1fa208d7.png](https://i-blog.csdnimg.cn/blog_migrate/e2b4848ec6067bddaf1cdd4a9910f796.jpeg)
2、浏览器随便打开一个瓦片地址,说明没问题:
![d85a2c8d274a29386952fa2cb82ee570.png](https://i-blog.csdnimg.cn/blog_migrate/befb5f34c533dd48111bbb197584d132.jpeg)
3、请求没有问题啊,这是什么情况;想到了QGIS这个软件去检验瓦片的请求规则:
![036e89f9a28370641910b9ed87e13f55.png](https://i-blog.csdnimg.cn/blog_migrate/7c1695b3622fe238108af5565efd7b1d.jpeg)
4、QGIS加载没问题,想到浏览器请求的Header:
![0086ef1f502ae3c89018fe68e2d341ee.png](https://i-blog.csdnimg.cn/blog_migrate/a3705ab424da45e83140906f5db7b44a.jpeg)
5、尝试去继承TiledLayer,去重写GetTileSource方法用WebClient把在浏览器请求Headers都给加进去自己实现获取瓦片方法:
![eb083b21cd79232ed728cb28e6a9f549.png](https://i-blog.csdnimg.cn/blog_migrate/5cd9f8bd75b8e2a91324d620d560ca88.jpeg)
6、加载平面底图:
![964386f0316c66b8e5c1ecec1b4b2ec1.gif](https://i-blog.csdnimg.cn/blog_migrate/d2180c2063098d5396a1a8ba4b4c632b.gif)
7、加载卫星底图:
![5ee94406e9cfc93736e01a64dc58767e.gif](https://i-blog.csdnimg.cn/blog_migrate/f5453e55f44fa330f97839bdd6010f24.gif)
最终简单的效果先这样吧;以后有时间的话,可以再去摸索一下更复杂的效果;编程不息、Bug不止、无Bug、无生活;改bug的冷静、编码的激情、完成后的喜悦、挖坑的激动 、填坑的兴奋;这也许就是屌丝程序员的乐趣吧;今天就到这里吧;希望自己有动力一步一步坚持下去;生命不息,代码不止;大家抽空可以看看今天分享的效果,有好的意见和想法,可以在留言板随意留言;我看到后会第一时间回复大家,多谢大家的一直默默的关注和支持!如果觉得不错,那就伸出您的小手点个赞并关注一下,多谢您的支持!