Как получить FWS от Geoserver в Leaflet? - PullRequest
0 голосов
/ 06 ноября 2019

У меня проблемы с использованием WFS от Geoserver для загрузки на листовку.

Мой WFS получает данные из базы данных PostGIS.

Я вижу эту ошибку в консоли.

Доступ к XMLHttpRequest в 'http://localhost:8080/geoserver/web_mapping/ows' из источника' null 'был заблокирован политикой CORS: в запрошенном ресурсе отсутствует заголовок' Access-Control-Allow-Origin '.

Что это значит?

Я почти уверен, что правильно понял свой код, но он не загружается?

HTML

ghfgh <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" href="leaflet.css" />
<script type='text/javascript' src='leaflet.js'></script>
<script 
src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"> 
</script>
</head>
<body>
<h1>Transmission Lines USA</h1>
<div id="map" style="width: 1200px; height: 440px; border: 1px solid 
#AAA;"></div>
<script src="webapp3.js"></script>
</body>
</html>



            var tline = new L.TileLayer.WMS('http://localhost:8080/geoserver/web_mapping/wms',{
                layers : 'web_mapping:tline',
                format: 'image/png',
                transparent: true
            });

            var projects = new L.TileLayer.WMS('http://localhost:8080/geoserver/web_mapping/wms',{
                layers : 'web_mapping:renewable',
                format: 'image/png',
                transparent: true
            });

            var geojsonLayer = new L.GeoJSON();

            function handleJson(data) {
                console.log(data)
                geojsonLayer.addData(data);
            }

            var rootUrl = 'http://localhost:8080/geoserver/web_mapping/ows';

            var defaultParameters = {
               service: 'WFS',
               version: '1.0.0',
               request: 'GetFeature',
               typeName: 'web_mapping:renewable',
               maxFeatures: 200,
               outputFormat: 'application/json',
               format_options: 'callback: getJson',
               srsName: 'EPSG:4326'

             };

             $.ajax({
                url: rootUrl,
                dataType: 'json',
                jsonpCallback: 'getJson',
                success: handleJson
            });


            var aerial = L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}', {
                attribution: 'Map data &copy; <a href="https://www.openstreetmap.org/">OpenStreetMap</a> contributors, <a href="https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="https://www.mapbox.com/">Mapbox</a>',
                maxZoom: 18,
                id: 'mapbox.satellite',
                accessToken: 'pk.eyJ1IjoiYWRhZmVyIiwiYSI6ImNrMmpydm00aTBvYXIzbWxhY25vZjg5ZDkifQ.5cEJRE63c6q04TFgiqEmkg'
            });


            var map = L.map('map', {
                center: [39.73, -104.99],
                zoom: 4,
                layers: [aerial, tline,geojsonLayer]
            });

            var overlayMaps = {
                "Transmission Lines": tline
            };

            L.control.layers(overlayMaps).addTo(map);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...