#client #ogc #api-client #collection #stac #access #ogcapi

ogcapi-client

访问 OGC API Feature 和 STAC 端点的客户端

2 个不稳定版本

0.2.0 2024 年 5 月 19 日
0.1.0 2022 年 7 月 21 日

#1197 in 网页开发

Download history 153/week @ 2024-05-18 5/week @ 2024-05-25 1/week @ 2024-06-29 8/week @ 2024-07-06

103 每月下载量
用于 ogcapi

MIT/Apache 许可

110KB
2.5K SLoC

OGC API 客户端

客户端

ogcapi-client 库提供访问通过 OGC API 或 时空资产目录 (STAC) 提供的地理空间数据集的客户端,具有以下功能:

  • 目录树深度优先迭代器
  • 集合迭代器
  • 项搜索
  • 懒分页处理

示例

use ogcapi_client::Client;
use ogcapi_types::common::Bbox;
use ogcapi_types::stac::SearchParams;

fn main() {
    // Setup a client for a given STAC endpoint
    let endpoint = "https://data.geo.admin.ch/api/stac/v0.9/";
    let client = Client::new(endpoint).unwrap();

    // Fetch root catalog and print `id`
    let root = client.root().unwrap();
    println!("Root catalog id: {}", root.id);

    // Count catalogs
    let catalogs = client.catalogs().unwrap();
    println!("Found {} catalogs!", catalogs.count());

    // Search items
    let bbox = Bbox::from([7.4473, 46.9479, 7.4475, 46.9481]);
    let params = SearchParams::new()
        .with_bbox(bbox)
        .with_collections(["ch.swisstopo.swissalti3d"].as_slice());
    let items = client.search(params).unwrap();
    println!("Found {} items!", items.count());
}

依赖

~6–17MB
~255K SLoC