国际化(I18n)¶
Geoserver支持返回各种语言的GetCapability文档。该功能可用于以下服务:
WMS 1.1和1.3
WFS 2.0
WCS 2.0
配置¶
Geoserver为标题和摘要提供了一个I18N编辑器:
层配置页面。
层组配置页面。
WMS、WFS、WCS服务配置页。
有关样式I18N配置,请参见 SLD中的I18N 。
默认情况下,该编辑器处于禁用状态,可以从I18N复选框中启用:

在Contact Information页面中,所有字段都可以国际化:

服务获取功能¶
GetCapability文档语言可以使用 AcceptLanguages
请求参数。Geoserver的响应将根据以下规则而有所不同:
国际化的元素将是标题、摘要和关键词。
如果指定了单一语言代码,例如
AcceptLanguages=en
Geoserver将尝试返回该语言的内容。如果没有找到所请求语言的内容,将返回ServiceExceptionReport。
如果指定了多个语言代码,例如
AcceptLanguages=en fr
或AcceptLanguages=en,fr
,对于每个可国际化的内容,Geoserver将尝试以指定的语言之一返回它。如果找不到任何请求语言的内容,则将返回ServiceExceptionReport。
也可以根据本地语言变体(例如
AcceptLanguages=en fr-CA
或AcceptLanguages=en,fr-CA
)。如果使用本地变量指定了任何I18N内容,并且请求参数仅指定了语言代码,则内容将在响应中编码。请记住,使用语言代码记录的相反情况内容不适用于本地变体请求。
示例:如果使用本地变量指定I18N内容
fr-CA
并且请求的仅指定了语言代码 ``AcceptLanguages=fr` the local variant `` 将使用FR-CA``内容。示例:如果使用语言代码指定I18N内容
fr
而请求的只指定了本地变量 ``AcceptLanguages=fr-CA` the language code `` Fr``内容不可用。如果一个
*
存在于参数值中,例如AcceptLanguages=en fr *
或AcceptLanguages=en,fr,*
,Geoserver将尝试以指定的语言代码之一返回内容。如果未找到任何内容,则将以可用语言中的一种语言返回内容。
如果并非所有可配置元素都具有适用于所请求语言的I18N标题和摘要,Geoserver将仅为定义了这些属性的服务、层、图层组和样式进行编码。
如果缺少的值是磁贴,则会出现如下错误消息,以代替缺少的国际化内容:
DID NOT FIND i18n CONTENT FOR THIS ELEMENT
。使用时
AcceptLanguages
参数Geoserver将对响应中的URL进行编码,添加语言参数的第一个值从AcceptLanguages
参数。

默认语言¶
Geoserver允许在服务、图层和组的配置页面中设置国际内容时定义要使用的默认语言,但不允许 AcceptLanguages
参数已在 GetCapabilities
请求。可以从服务的配置页面(WMS、WFS、WCS)或从下拉菜单的全局设置中设置默认语言,如下所示:

还可以为每个可配置字段设置一个语言为空的I18N条目,作为默认翻译。

当请求国际内容时,对于每个国际化字段,Geoserver的行为如下:
将使用服务特定的默认语言(如果存在)。
如果未找到,则将使用全局默认语言(如果存在)。
如果未找到I18N内容空语言值,则将使用该值。
如果未找到,将使用为该字段找到的第一个I18N值。