Flexberry / Leaflet-WFST

OGC WFS-T client layer for Leaflet.
http://flexberry.github.io/Leaflet-WFST/
MIT License
151 stars 50 forks source link

Ability to Proxy requests #25

Open ismail44 opened 8 years ago

ismail44 commented 8 years ago

Has there been any thought or discussion as to creating some sort of "proxy" setting to get around CORS? I know that OpenLayers has this feature, I was just wondering if it's been discussed here.

Thanks.

carrbrpoa commented 8 years ago

Remembering that if you can manage the server side, you can configure CORS there ;)

ismail44 commented 8 years ago

Sadly, I don't manage the server side. We allow users to add layers from any number of WFS providers... as long as they know the URL they can pick from a list of features and add them to the map.

On Thu, Feb 25, 2016 at 3:29 PM, César Augusto notifications@github.com wrote:

Remembering that if you can manage the server side, you can configure CORS there ;)

— Reply to this email directly or view it on GitHub https://github.com/Flexberry/Leaflet-WFST/issues/25#issuecomment-188968234 .

kuzkok commented 8 years ago

I did not think about that. This will be a good feature.

ismail44 commented 8 years ago

I've kind of implemented it in my own code... all my urls look like this:

/mapProxy/?url={path to WFS SERVER}

And I have Apache doing the magic on my web server, and it works well, except when the WFS object tries to make the call for DescribeFeatureType and GetFeature it calls a utility method provided by Leaflet to build query string parameters and it sees the "?" in proxy url and doesn't append another "?" to the end of the URL for the WFS server.

I have another band-aid for that, but I am sure there's a better way.

Thanks for thinking about this.

On Fri, Feb 26, 2016 at 10:13 AM, kuzkok notifications@github.com wrote:

I did not think about that. This will be a good feature.

— Reply to this email directly or view it on GitHub https://github.com/Flexberry/Leaflet-WFST/issues/25#issuecomment-189318093 .

gornak49 commented 8 years ago

посоветовали плагин https://addons.mozilla.org/ru/firefox/addon/cors-everywhere/ для обхода CORS проверил в firebug- координаты в POST сервер отдает (страница и скрипты на локальном компьютере),ошибок нет, а слой не отображается (crs.epsg3857),правда пришлось в 892 строке убрать двоеточие return this.options.typeNS + '' + name; иначе координаты не приходят возможно ли такое решение и в чем проблема?

arszp10 commented 8 years ago

@gornak49 что возвращал сервер (полный ответ) до того, как убрал двоеточие?

gornak49 commented 8 years ago

так выглядит с двоеточием(плагин CORSE включен)-DescribeFeatureType-дает ответ,а GetFeature - нет otvet1 ,а так без otvet2 но на карте слой не отображается

arszp10 commented 8 years ago

@gornak49 я так полагаю, что в названии слоя есть двоеточие. получается, что в коде вставляется двоеточие и в названии слоя двоеточие и того два двоеточия, и поэтому сервер выбрасывает ошибку "Can't find layer ':kvly' ". чтобы это проверить нужно посмотреть какие параметры переданы.

что касается не отображения слоя и отсутствие ошибок, то нужно пошагово смотреть, как происходит отрисовка.

gornak49 commented 8 years ago

в названии слоя двоеточий нет, вот скрин запросов zapros1 и часть скрипта (переданных параметров??) var boundaries = new L.WFS({ url: "http://vvlph.nextgis.com/api/resource/6/wfs", typeNS: '', typeName: 'kvly', crs: L.CRS.EPSG3857, geometryField: 'geom', style: { color: 'blue', weight: 2 } }).addTo(map); ,причем я проверял вручную простым POST-запросом, результат такой же:DescribeFeatureType-не реагирует на двоеточие,а GetFeature- в случае двоеточия дает ошибку

как пошагово смотреть отрисовку??

arszp10 commented 8 years ago

@gornak49 ошибка в том, что параметр typeNS пустой. нужно указывать рабочее пространство и слой. typeNS это рабочее пространство, а typeName это слой.

чтобы посмотреть отрисовку поставь breakpoint на строчку, где запрос получает ответ и пошагово смотри как он данные конвертнёт в сущности и затем их отрисует

kuzkok commented 8 years ago

обсуждение проблем работы плагина с сервером nextgis на форуме gis-lab