Mapquest:此密钥未获得此服务的授权
Mapquest: This key is not authorized for this service
我正在尝试使用 Geocoding.net 将我的纬度和经度反向地理编码为格式化地址。
我想要一个来自 MapQuest 的地址,而不是来自 Yahoo、google 和 bing 等其他提供商的地址。
这是我的代码:
try
{
IGeocoder geocoder = new MapQuestGeocoder("Fmjtd%7Cluu82q6***********");
var addresses = geocoder.ReverseGeocode(latitude, longitude);
return ("Formatted address : " + addresses.First().FormattedAddress);
}
catch (Exception exception)
{
return exception.Message;
}
此代码捕获异常并抛出此错误"This key is not authorized for this service."
我知道当我尝试访问 Geocoder 的企业版 API 时会发生此错误,即 http://www.mapquestapi.com/geocoding/v1/reverse?key=*********************
为了免费和开源使用,我应该点击这个API:
http://open.mapquestapi.com/geocoding/v1/address?key=YOUR-KEY-HERE
我该怎么做?有没有在构造函数本身中传递 POST URL 的选项?或者其他方式?
扫描 Geocoding.net 的开源代码,看来您只需要将地理编码器对象的 "UseOSM" 属性 设置为 true:
geocoder.UseOSM = true;
很简单。您不需要更改 URL。只需像这样添加 UseESM=true:
try
{
IGeocoder geocoder = new MapQuestGeocoder("Fmjtd%7Cluu82q6***********"){UseOSM = true};
var addresses = geocoder.ReverseGeocode(latitude, longitude);
return ("Formatted address : " + addresses.First().FormattedAddress);
}
catch (Exception exception)
{
return exception.Message;
}
我正在尝试使用 Geocoding.net 将我的纬度和经度反向地理编码为格式化地址。 我想要一个来自 MapQuest 的地址,而不是来自 Yahoo、google 和 bing 等其他提供商的地址。 这是我的代码:
try
{
IGeocoder geocoder = new MapQuestGeocoder("Fmjtd%7Cluu82q6***********");
var addresses = geocoder.ReverseGeocode(latitude, longitude);
return ("Formatted address : " + addresses.First().FormattedAddress);
}
catch (Exception exception)
{
return exception.Message;
}
此代码捕获异常并抛出此错误"This key is not authorized for this service."
我知道当我尝试访问 Geocoder 的企业版 API 时会发生此错误,即 http://www.mapquestapi.com/geocoding/v1/reverse?key=*********************
为了免费和开源使用,我应该点击这个API:
http://open.mapquestapi.com/geocoding/v1/address?key=YOUR-KEY-HERE
我该怎么做?有没有在构造函数本身中传递 POST URL 的选项?或者其他方式?
扫描 Geocoding.net 的开源代码,看来您只需要将地理编码器对象的 "UseOSM" 属性 设置为 true:
geocoder.UseOSM = true;
很简单。您不需要更改 URL。只需像这样添加 UseESM=true:
try
{
IGeocoder geocoder = new MapQuestGeocoder("Fmjtd%7Cluu82q6***********"){UseOSM = true};
var addresses = geocoder.ReverseGeocode(latitude, longitude);
return ("Formatted address : " + addresses.First().FormattedAddress);
}
catch (Exception exception)
{
return exception.Message;
}