2013-07-11 33 views
0

是否可以使用分頁發送WFS請求?我嘗試了STARTINDEX,但它不起作用。我想一定限度Arcgis wfs請求中的分頁

EG內取功能:http://example.com/ArcGIS/services/<mapping service name>/MapServer/WFSServer?VERSION=1.1.0&SERVICE=WFS&REQUEST=GetFeature&TYPENAME=<type name>&STARTINDEX=10&MAXFEATURE=10

或者:我怎麼會只獲取OBJECTID/FEATUREID與世界糧食首腦會議的要求,這樣我可以發送請求過濾器?

回答

1

那麼先回答你的最後一個問題來請求FEATUREID對象使用類似:

http://example.com/geoserver/wfs? 
    service=wfs& 
    version=2.0.0& 
    request=GetFeature& 
    typeName=namespace:featuretype& 
    featureID=feature 

要你使用類似分頁:

http://example.com/geoserver/wfs? 
     service=wfs& 
     version=2.0.0& 
     request=GetFeature& 
     typeName=namespace:featuretype& 
     startindex=0& 
     maxFeatures=10 

的一些注意事項對這個但是。我只對Geoserver進行了測試,我知道在geoserver的2.1.x版中startindex對結果沒有影響。我知道它在2.3.x版本中有效。如果您使用特定版本的Geoserver,我建議您查看它。我不確定在其他提供wfs的應用程序中支持的是什麼。您需要與他們覈對,但是我上面給出的是符合WFS規範的。

最後一件事是你可能想要添加一些排序時,這樣做。即

http://example.com/geoserver/wfs? 
      service=wfs& 
      version=2.0.0& 
      request=GetFeature& 
      typeName=namespace:featuretype& 
      startindex=0& 
      maxFeatures=10& 
      sortBy=namespace:field 

這樣做的原因是,如果沒有數據更新時的數據可能意味着你可能無法看到結果ECT頁面之間的請求之間改變排序。即使進行排序,這仍然是可能的,特別是如果不使用ID進行排序或使用增量樣式ID字段。但是,通常在ID字段上排序將確保分頁的順利進行。

由於您正在使用ArcGis,因此可能無法向您提供一些相關信息。不過,我確定最新版本的Arc Gis支持startindex字段的WFS規範。

+0

感謝Darkcylde。但我使用的是不支持Startindex的arcgis 9.3,我得到了替代解決方案,現在我正在使用支持類似功能的REST API來獲取ID – sandybo

+0

那麼確實發生了,也許ArcGIS 9.x只支持WFS 1.x 。有點像GeoServer 2.1。希望ArcGIS 10.x(我認爲它們高達10.2)支持整個WFS 2.0標準。 – Darkcylde