Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/05747.jsonl.gz/80

引子
需求是有一幅海洋要素的数据，数据有 12 个
channel，12 个
channel对应 12 个月份的数据。图层发布后，可以使用样式选择相应出 channel，显示某月的数据。简单粗暴的方式是复制 12 份
style，为了利于以后的维护 (多半要自己维护)，遂想找一种方式类似 “动态样式” 的东西，可以从外部获取参数，使用同个
style通过不同的参数选择不同的
channel。
这里被自己的自以为是小坑了一下：生产环境用的
GeoServer版本比较低，
2.11.x。自己看文档的时候看的最新的文档，测试不行后，又看了
2.11的文档，文档里虽然有类似的用法，但在
channal选择的时候不可用。
所以这个方式只适用于较新的版本。
图层发布
图层发布，多
channel的影像理论都可以。
设置样式
一般的波段融合的
channel select 是这种形式1
style中 1，2，3
channel对应
（R，G，B）。
对于选择单
channel显示，使用
Function获取 “环境变量”，替换默认值
其中，
channel name 中包裹了一个 Function 对象，它在
env中的
m的值为空时候提供
1作为默认值，若 m 非空，则使用
m的值作为
channel name。
在
wms请求中添加 & env=m:2 即可选择编号为 2 的
channel显示。
以下是一个完整的样式：
后话
最终因为生产环境版本不容易更新，还是自己复制了 12*2 个样式。