为什么搜索意大利罗马 return 4 个重复结果?

why does search for rome, italy return 4 duplicate results?

我请求对意大利罗马进行地理编码,returns 这个:

{"spatialReference":{"wkid":4326,"latestWkid":4326},"locations":[
    {"name":"Roma, Latium, Italy", "extent":{"xmin":12.389896,"ymin":41.800739,"xmax":12.577896,"ymax":41.988739},"feature":{"geometry":{"x":12.483895995000069,"y":41.894738560000064}, "attributes":{"Type":"National Capital","Match_addr":"Roma, Latium, Italy","Addr_type":"POI"}}},
    {"name":"Roma, Latium, Italy", "extent":{"xmin":12.389896,"ymin":41.800739,"xmax":12.577896,"ymax":41.988739},"feature":{"geometry":{"x":12.483895995000069,"y":41.894738560000064}, "attributes":{"Type":"National Capital","Match_addr":"Roma, Latium, Italy","Addr_type":"POI"}}},
    {"name":"Roma, Latium, Italy", "extent":{"xmin":12.389896,"ymin":41.800739,"xmax":12.577896,"ymax":41.988739},"feature":{"geometry":{"x":12.483895995000069,"y":41.894738560000064}, "attributes":{"Type":"National Capital","Match_addr":"Roma, Latium, Italy","Addr_type":"POI"}}},
    {"name":"Roma, Latium, Italy", "extent":{"xmin":12.389896,"ymin":41.800739,"xmax":12.577896,"ymax":41.988739},"feature":{"geometry":{"x":12.483895995000069,"y":41.894738560000064}, "attributes":{"Type":"National Capital","Match_addr":"Roma, Latium, Italy","Addr_type":"POI"}}}
]}

这里是 request URL.

这些条目似乎都是重复的。这有什么原因吗?

是的。原因是同一个地方的别名。

如果您将请求修改为return all fields,您会发现以下字段在四个结果中是不同的:

  • 得分
  • 排名
  • 城市

主要区别在于城市值。它为您提供四种不同的罗马拼写法(Roma、Rome、Roeme 和 Rom)。原因是为了在搜索各种拼写时可以找到该地方。

在搜索全球城市时,您最有可能看到多个结果,例如罗马或纽约(a.k.a。新约克、新约尔克等),因为它们往往是有多种语言的名字。

正如其中一条评论所建议的那样,您可以通过将 maxLocations 设置为 1 来解决此问题。结果按排名排序,因此您可能会在列表顶部获得最佳结果.