Skip to content

Commit 603f9a0

Browse files
authored
Params wmts (#11824)
1 parent f337dbb commit 603f9a0

2 files changed

Lines changed: 36 additions & 1 deletion

File tree

web/client/components/map/openlayers/__tests__/Layer-test.jsx

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1016,6 +1016,41 @@ describe('Openlayers layer', () => {
10161016
expect(map.getLayers().getLength()).toBe(1);
10171017
expect(map.getLayers().item(0).getSource().urls.length).toBe(2);
10181018
});
1019+
1020+
it('allows wmts url-parameters to be added to url', () => {
1021+
var options = {
1022+
"type": "wmts",
1023+
"visibility": true,
1024+
"name": "nurc:Arc_Sample",
1025+
"group": "Meteo",
1026+
"format": "image/png",
1027+
"params": {
1028+
"myparam1": "myvalue1",
1029+
"myparam2": "myvalue2"
1030+
},
1031+
"tileMatrixSet": [
1032+
{
1033+
"TileMatrix": [],
1034+
"ows:Identifier": "EPSG:900913",
1035+
"ows:SupportedCRS": "urn:ogc:def:crs:EPSG::900913"
1036+
}
1037+
],
1038+
"url": ["http://sample.server/geoserver/gwc/service/wmts"]
1039+
};
1040+
// create layer
1041+
var layer = ReactDOM.render(
1042+
<OpenlayersLayer type="wmts"
1043+
options={options} map={map}/>, document.getElementById("container"));
1044+
1045+
1046+
expect(layer).toBeTruthy();
1047+
// count layers
1048+
expect(map.getLayers().getLength()).toBe(1);
1049+
const url = map.getLayers().item(0).getSource().urls[0];
1050+
expect(url.includes('myparam1=myvalue1')).toBe(true);
1051+
expect(url.includes('myparam2=myvalue2')).toBe(true);
1052+
});
1053+
10191054
it('test correct wms origin', () => {
10201055
var options = {
10211056
"type": "wms",

web/client/components/map/openlayers/plugins/WMTSLayer.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ const createLayer = options => {
119119
// the extent has effect to the tile ranges
120120
// we should skip the extent if the layer does not provide bounding box
121121
let extent = layerExtent && getIntersection(layerExtent, projection.getExtent());
122-
const queryParameters = {};
122+
const queryParameters = options.params ? options.params : {};
123123
urls.forEach(url => addAuthenticationParameter(url, queryParameters, options.securityToken));
124124
const queryParametersString = urlParser.format({ query: { ...queryParameters } });
125125

0 commit comments

Comments
 (0)