美文网首页
2020-02-11

2020-02-11

作者: 不玩了啊 | 来源:发表于2020-02-11 17:53 被阅读0次

    Geoserver跨域终极解决方案

    技术标签:Geoserver跨域mbtiles太乐地图WebGIS

    在其他程序调用使用Geoserver时,可能会遇到跨域

    Access to XMLHttpRequest at 'http://localhost:8080/geoserver/gwc/service/tms/1.0.0/KylinWS:TestSC@EPSG:900913@pbf/8/203/150.pbf' from origin 'http://localhost:18189' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

    以使用太乐地图WebGIS开发平台进行开发为例,

    在使用太乐地图WebGIS开发平台 for Mapboxgl时,调用geoserver的MBtiles,遇到跨域的问题,导致地图看不到

    Chrome中F12开发者模式中看到的错误

    太乐地图mapboxgl示例页面也看不到地图

    这是因为Geoserver或tomcat没有开启允许跨域访问。

    两种方式发布GeoServer,分别是Jetty与Tomcat

    两种方式跨域 cross origin 解决方法不同,看完继续看第三种解决方法

    Jetty发布的解决方法

    https://www.cnblogs.com/arxive/p/8673399.html

    https://blog.csdn.net/geol200709/article/details/80320824

    方法2:Tomcat发布的Geoserver跨域解决方法

    To add CORS headers, I simply added to$CATALINA_HOME/conf/web.xmlthe following lines:

    CorsFilter

    org.apache.catalina.filters.CorsFilter

    cors.allowed.origins

    *

    CorsFilter

    /*

    最后一种解决方法:

    方法3:使用代理

    自己写一个proxy.php,proxy.ashx,proxy.xxx

    网上有许多代理的文章

    跨域开启后,geoserver的矢量瓦片地图地图可以访问了

    http://localhost:18189/examples/mapboxgl/editor.html#map_mbtiles_geoserver

    顺便分享一下太乐地图WebGIS开发平台访问geoserver的mbtiles的代码

    varmap, threeLayer, position = [104.07898,30.66147];

    mapboxgl.accessToken ='pk.eyJ1IjoiYWhvY2V2YXIiLCJhIjoiRk1kMWZaSSJ9.E5BkluenyWQMsBLsuByrmg';

    varsimple = {

    "version":8,

    "sprite":"http://"+window.location.host +"/examples/data/mbstyle/ArcTilerWeb/sprites/sprite",

    "glyphs":"http://"+window.location.host +"/examples/data/mbstyle/ArcTilerWeb/fonts/{fontstack}/{range}.pbf",

    "sources": {

    "composite": {

    "url":"mapbox://mapbox.mapbox-terrain-v2",

    "type":"vector"

                        },

    "esri": {

    "type":"vector",

    "scheme":"tms",

    "tiles": [

    "http://localhost:8080/geoserver/gwc/service/tms/1.0.0/KylinWS:TestSC@EPSG:900913@pbf/{z}/{x}/{y}.pbf"

                            ]

                        },

                    },

    "layers":

                        [

            {

    "id":"cityregion",

    "type":"fill",

    "source":"esri",

    "source-layer":"cityregion",

    "layout": {},

    "paint": {

    "fill-color":"#D4CDBC"

                }

            },

            {

    "id":"ShuiXiPolygon",

    "type":"fill",

    "source":"esri",

    "source-layer":"ShuiXiPolygon",

    "layout": {},

    "paint": {

    "fill-color":"#73B2FF"

                }

            },

            {

    "id":"XianDao/1",

    "type":"line",

    "source":"esri",

    "source-layer":"XianDao",

    "minzoom":8.58,

    "layout": {

    "line-cap":"round",

    "line-join":"round"

                },

    "paint": {

    "line-color":"#B9B7B9",

    "line-width":4.13333

                }

            },

            {

    "id":"XianDao/0",

    "type":"line",

    "source":"esri",

    "source-layer":"XianDao",

    "minzoom":8.58,

    "layout": {

    "line-cap":"round",

    "line-join":"round"

                },

    "paint": {

    "line-color":"#FFFFFF",

    "line-width":2.13333

                }

            },

            {

    "id":"ShengDao/1",

    "type":"line",

    "source":"esri",

    "source-layer":"ShengDao",

    "layout": {

    "line-cap":"round",

    "line-join":"round"

                },

    "paint": {

    "line-color":"#D4C9B4",

    "line-width":4.66667

                }

            },

            {

    "id":"ShengDao/0",

    "type":"line",

    "source":"esri",

    "source-layer":"ShengDao",

    "layout": {

    "line-cap":"round",

    "line-join":"round"

                },

    "paint": {

    "line-color":"#FFF9CC",

    "line-width":2.66667

                }

            },

            {

    "id":"GuoDao/1",

    "type":"line",

    "source":"esri",

    "source-layer":"GuoDao",

    "layout": {

    "line-cap":"round",

    "line-join":"round"

                },

    "paint": {

    "line-color":"#E68C65",

    "line-width":5.06667

                }

            },

            {

    "id":"GuoDao/0",

    "type":"line",

    "source":"esri",

    "source-layer":"GuoDao",

    "layout": {

    "line-cap":"round",

    "line-join":"round"

                },

    "paint": {

    "line-color":"#FFE6CF",

    "line-width":3.06667

                }

            },

            {

    "id":"gaosu/1",

    "type":"line",

    "source":"esri",

    "source-layer":"gaosu",

    "layout": {

    "line-cap":"round",

    "line-join":"round"

                },

    "paint": {

    "line-color":"#B35933",

    "line-width":5.6

                }

            },

            {

    "id":"gaosu/0",

    "type":"line",

    "source":"esri",

    "source-layer":"gaosu",

    "layout": {

    "line-cap":"round",

    "line-join":"round"

                },

    "paint": {

    "line-color":"#E69973",

    "line-width":4

                }

            },

            {

    "id":"TieLu/1",

    "type":"line",

    "source":"esri",

    "source-layer":"TieLu",

    "layout": {

    "line-join":"round"

                },

    "paint": {

    "line-color":"#BFB8AA",

    "line-width":1.88973

                }

            },

            {

    "id":"TieLu/0",

    "type":"line",

    "source":"esri",

    "source-layer":"TieLu",

    "layout": {

    "line-join":"round"

                },

    "paint": {

    "line-color":"#E6E6E6",

    "line-width":0.755867,

    "line-dasharray": [

    10.5839,

    12.3479

                    ]

                }

            },

            {

    "id":"GuoDao/label/Class 1",

    "type":"symbol",

    "source":"esri",

    "source-layer":"GuoDao",

    "minzoom":9.87,

    "layout": {

    "symbol-placement":"line",

    "text-font": [

    "Microsoft YaHei Regular"

                    ],

    "text-size":13.3333,

    "text-max-width":8,

    "text-field":"{PathName}",

    "text-optional":true

                },

    "paint": {

    "text-color":"#000000"

                }

            },

            {

    "id":"gaosu/label/Class 1",

    "type":"symbol",

    "source":"esri",

    "source-layer":"gaosu",

    "layout": {

    "symbol-placement":"line",

    "text-font": [

    "Microsoft YaHei Regular"

                    ],

    "text-size":13.3333,

    "text-max-width":8,

    "text-field":"{PathName}",

    "text-optional":true

                },

    "paint": {

    "text-color":"#000000"

                }

            },

            {

    "id":"citypoint",

    "type":"symbol",

    "source":"esri",

    "source-layer":"citypoint",

    "layout": {

    "icon-image":"citypoint",

    "icon-allow-overlap":true,

    "text-font": [

    "Microsoft YaHei Regular"

                    ],

    "text-size":13.3333,

    "text-anchor":"bottom",

    "text-max-width":8,

    "text-field":"{Name}",

    "text-optional":true

                },

    "paint": {

    "text-color":"#000000",

    "text-halo-color":"#E1E1E1",

    "text-halo-width":1.33333

                }

            },

            {

    "id":"XianPoint",

    "type":"symbol",

    "source":"esri",

    "source-layer":"XianPoint",

    "minzoom":7.94,

    "layout": {

    "icon-image":"XianPoint",

    "icon-allow-overlap":true,

    "text-font": [

    "Microsoft YaHei Regular"

                    ],

    "text-size":13.3333,

    "text-anchor":"center",

    "text-max-width":8,

    "text-field":"{Name}",

    "text-optional":true

                },

    "paint": {

    "text-color":"#000000"

                }

            },

            {

    "id":"XianZhen",

    "type":"symbol",

    "source":"esri",

    "source-layer":"XianZhen",

    "minzoom":9.98,

    "layout": {

    "icon-image":"XianZhen",

    "icon-allow-overlap":true,

    "text-font": [

    "Microsoft YaHei Regular"

                    ],

    "text-size":13.3333,

    "text-anchor":"bottom",

    "text-max-width":8,

    "text-field":"{Name}",

    "text-optional":true

                },

    "paint": {

    "text-color":"#000000"

                }

            }

                        ]

                }

    varmap =newmapboxgl.Map({

    container:'map',

    style: simple,

    zoom:8,

    center: [104.07898,30.66147]

                });

    相关文章

      网友评论

          本文标题:2020-02-11

          本文链接:https://www.haomeiwen.com/subject/dznxfhtx.html