如何使用 Fiddler 调用 ArcGIS 休息服务?

How to call an ArcGIS rest service using Fiddler?

我正在尝试使用 Fiddler 调用 ArcGIS 服务,但我似乎无法将其获取到 return 数据。

要求:

GET http://services1.arcgis.com/xxxxxxxxxxxx/ArcGIS/rest/services/WorldTimeZonesNamed/FeatureServer/query?layerDefs=0&geometryType=esriGeometryEnvelope&geometry={xmin:-109.55,ymin:25.76,xmax:-109.55,ymax:25.76,spatialReference:{wkid:4326}}&f=json HTTP/1 .1 用户代理:Fiddler 主持人:services1.arcgis.com 内容长度:0

回复:

HTTP/1.1 200 行 内容类型:text/plain;字符集=utf-8 服务器:Microsoft-IIS/8.5 X-ArcGIS 实例:MTSDS_Web_IN_14 X-Powered-By:ASP.NET 访问控制允许来源:* 日期:2016 年 8 月 24 日星期三 14:43:19 GMT 内容长度:98

{"error":{"code":400,"message":"","details":["Operation without query criteria is not allowed."]}}

我在这里做错了什么?

如错误消息所述,您需要将 whereClause 参数与请求一起发送。如果没有条件,那么您应该发送“1=1”作为您的标准。

原来我需要指定应该返回哪些输出字段 (outFields=*)。我还能够使用点几何类型而不是信封,因此我可以发送单个坐标对而不是信封(矩形):

GET http://services1.arcgis.com/xxxxxxxxxxxx/ArcGIS/rest/services/WorldTimeZonesNamed/FeatureServer/0/query?geometry={'x':-55.748800,'y':48.758563}&geometryType=esriGeometryPoint&outFields=*&returnGeometry=false&f=json HTTP/1.1 用户代理:Fiddler 主机:services1.arcgis.com 内容长度:0