使用 Nominatim API 的反向地理编码不起作用
Reverse geocoding using Nominatim API doesn't work
我需要根据一对 lat
,lon
坐标
找出城市的名称
我正在使用 Nominatim API https://wiki.openstreetmap.org/wiki/Nominatim
这是一个示例查询:
https://nominatim.openstreetmap.org/reverse?format=xml&lat=40&lon=30&zoom=18&addressdetails=1
它在浏览器中工作,但是在这个 C# 代码中失败:
ServicePointManager.Expect100Continue = true;
ServicePointManager.DefaultConnectionLimit = 9999;
ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072;
var url = "https://nominatim.openstreetmap.org/reverse?format=xml&lat=40&lon=30&zoom=18&addressdetails=1";
var request = (HttpWebRequest)WebRequest.Create(url);
var response = (HttpWebResponse)request.GetResponse();
var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
我得到以下异常:
The underlying connection was closed: The connection was closed
unexpectedly.
不知道为什么上面的代码在其他 API 上工作得很好并且查询在浏览器上工作
它总是会失败还是有时会失败?
目前一些 OSM 服务器从伦敦搬到了阿姆斯特丹。 API 和可能的其他服务(例如 Nominatim)运行 在备份硬件上,直到主服务器再次启动。这会降低性能,也可能导致偶发问题。参见 https://lists.openstreetmap.org/pipermail/talk/2018-July/081009.html . You can check the current state at https://twitter.com/osm_tech。
对我来说,我正在使用 angular
进行测试
http://nominatim.openstreetmap.org/reverse?format=json&lon= lon &lat= lag
适用于本地主机,但在联机时不再适用。
只有更改为
https://nominatim.openstreetmap.org/reverse?format=json&lon= lon &lat= lag
有效。
http -> https
我需要根据一对 lat
,lon
坐标
我正在使用 Nominatim API https://wiki.openstreetmap.org/wiki/Nominatim
这是一个示例查询:
https://nominatim.openstreetmap.org/reverse?format=xml&lat=40&lon=30&zoom=18&addressdetails=1
它在浏览器中工作,但是在这个 C# 代码中失败:
ServicePointManager.Expect100Continue = true;
ServicePointManager.DefaultConnectionLimit = 9999;
ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072;
var url = "https://nominatim.openstreetmap.org/reverse?format=xml&lat=40&lon=30&zoom=18&addressdetails=1";
var request = (HttpWebRequest)WebRequest.Create(url);
var response = (HttpWebResponse)request.GetResponse();
var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
我得到以下异常:
The underlying connection was closed: The connection was closed unexpectedly.
不知道为什么上面的代码在其他 API 上工作得很好并且查询在浏览器上工作
它总是会失败还是有时会失败?
目前一些 OSM 服务器从伦敦搬到了阿姆斯特丹。 API 和可能的其他服务(例如 Nominatim)运行 在备份硬件上,直到主服务器再次启动。这会降低性能,也可能导致偶发问题。参见 https://lists.openstreetmap.org/pipermail/talk/2018-July/081009.html . You can check the current state at https://twitter.com/osm_tech。
对我来说,我正在使用 angular
进行测试http://nominatim.openstreetmap.org/reverse?format=json&lon= lon &lat= lag
适用于本地主机,但在联机时不再适用。 只有更改为
https://nominatim.openstreetmap.org/reverse?format=json&lon= lon &lat= lag
有效。
http -> https