【问题标题】:Socrata API call using within_polygon function returning error使用 within_polygon 函数返回错误的 Socrata API 调用
【发布时间】:2015-10-20 17:31:58
【问题描述】:

使用 hurl.it,我正在尝试对西雅图市开放数据进行 API 调用。

这里是 GET 目的地:

https://data.seattle.gov/resource/82su-5fxf.json?$where=within_polygon(location, 'MULTIPOLYGON(((-122.345239999941 47.7339842230969,-122.344670705637 47.7051200031236, -122.35540073991 47.7051536806063,-122.355548433321 47.7340195160745, -122.345239999941 47.7339842230969)))')

我收到的错误:

Error: function within_polygon is not defined in SoQL.

然而,within_box 和 inside_circle 都在这个端点上工作——只是不在 inside_polygon。 数据来源于西雅图市的开放数据文档——这个特定的数据集称为 My Neighborhood:

https://data.seattle.gov/Community/My-Neighborhood-Map/82su-5fxf

以下是“within_polygon”的工作示例,但使用了不同的端点:

https://data.seattle.gov/resource/pu5n-trf4.json? $where=within_polygon(incident_location, 'MULTIPOLYGON(((-122.345239999941 47.7339842230969,-122.344670705637 47.7051200031236, -122.35540073991 47.7051536806063,-122.355548433321 47.7340195160745, -122.345239999941 47.7339842230969)))')

提前感谢您的帮助。

【问题讨论】:

    标签: socrata soda


    【解决方案1】:

    within_polygon 函数仅适用于每个数据集的最新 API 端点,因此请确保您使用的是正确的端点。你应该改用这个:

    https://dev.socrata.com/foundry/#/data.seattle.gov/3c4b-gdxv

    使用该端点,并将位置字段名更正为location,我能够创建这个有效的查询:

    https://data.seattle.gov/resource/3c4b-gdxv.json?$where=within_polygon(location,%20%27MULTIPOLYGON(((-122.345239999941%2047.7339842230969,-122.344670705637%2047.7051200031236,%20-122.35540073991%2047.7051536806063,-122.355548433321%2047.7340195160745,%20-122.345239999941%2047.7339842230969)))%27)
    

    【讨论】:

    • 太棒了,很高兴我能帮上忙!
    猜你喜欢
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 2021-04-11
    • 2017-02-10
    • 2013-10-21
    • 1970-01-01
    • 2020-09-06
    相关资源
    最近更新 更多