这可能是一个非常简单的问题,但我似乎无法弄清楚。
我正在编写一个 Javascript 应用程序,以使用 GeoExt 使用 GetCapabilities 请求从 WFS 服务器检索图层信息。GetCapabilities 返回有关 WFS 服务器的信息——服务器的名称、运行它的人员等,以及它所提供的数据层的信息。
我的基本代码如下所示:
var store = new GeoExt.data.WFSCapabilitiesStore({ url: serverURL });
store.on('load', successFunction);
store.on('exception', failureFunction);
store.load();
这按预期工作,并且当加载完成时,将调用 successFunction。
成功函数看起来像这样:
successFunction = function(dataProxy, records, options) {
doSomeStuff();
}
dataProxy是一个Ext.data.DataProxy对象,records是一个记录列表,WFS服务器上每一层一个,options为空。
这就是我卡住的地方:在这个函数中,我可以访问有关服务器提供的数据的所有层信息。但我还想提取在 store.load() 期间获取的 XML 中包含的服务器信息(见下文)。但我不知道如何将它从 dataProxy 对象中取出,我确信它必须被松散。
有任何想法吗?
我想要的字段包含在这个片段中:
<ows:ServiceIdentification>
<ows:Title>G_WIS_testIvago</ows:Title>
<ows:Abstract/>
<ows:Keywords>
<ows:Keyword/>
</ows:Keywords>
<ows:ServiceType>WFS</ows:ServiceType>
<ows:ServiceTypeVersion>1.1.0</ows:ServiceTypeVersion>
<ows:Fees/>
<ows:AccessConstraints/>