0

我只想向这个 URL 发出一个简单的 GET 请求:

https://services.arcgis.com/pGfbNJoYypmNq86F/arcgis/rest/services/COVID19_Public_Health_Status_by_County/FeatureServer/0/query?where=1%3D1&outFields=*&outSR=4326&f=json 

并获取关联的 JSON 数据。问题是这个资源只返回 1000 条记录。我相信美国大约有 3000 多个县。您可以在此处查看有关此 API 的更多信息:

https://coronavirus-resources.esri.com/datasets/97792521be744711a291d10ecef33a61/geoservice?geometry=6.433%2C-16.701%2C-38.567%2C72.161&showData=true

对于应该是一个非常简单的操作,我迷失在大量文档中。我是否需要创建一个应用程序并进行身份验证,然后将该令牌与 GET 请求一起发送?如果是这种情况,标题应该如何格式化?我检查了身份验证和 Rest API 功能级别教程,没有提到如何在其中任何一个中对请求进行身份验证。

总之,我只需要确保从 API 请求中获取所有数据。现在只有1000个县。我需要全部3000+。

4

2 回答 2

2

因为我看到它实际上是公开的,所以我认为你不需要登录或任何东西。

它是一个FeatureService,并且它实际上具有 ArcGIS Server 地图服务器的每个请求的默认要素数限制,即 1000 个要素。

为了通过请求获取所有信息,您必须执行多个请求。有 3152 个功能(计数请求),因此您必须至少提出 4 个请求。

您可以使用OBJECTID字段来获取块,您可以确定这是一个唯一的字段。

或者,您可以迭代已知的离散集,例如state_name每个状态请求的特征数)或region每个区域请求的特征数)。当然,您必须确保每个可能的值都小于最大值,例如,您无法通过time_zone每个 time_zone 请求的特征数)来做到这一点,因为central=1563eastern=1102

于 2020-04-17T17:01:07.187 回答
0

这个新的 API(plansafe.xyz/api上的文档)正式提供美国任何县的 COVID-19 数据。

下面是我对密歇根州一个县的当前数据所做的一个小 GET 请求的图片。API 也可用于历史数据(任何县的任何一天的 COVID-19 数据)。它也是免费的!

密歇根州肯特县的 COVID-19 县数据

如果图像未加载,我只需向端点发出请求,并将县和状态作为文档指定的 URL 参数。我在 Python 上对其进行了测试,但由于它是一个 HTTP GET,它应该适用于 curl 等。

于 2020-12-02T00:14:19.303 回答