我有一个城市名称列表。如果用户选择了一个,我想将我的角度 - 谷歌地图的中心设置为该特定城市。
console.log运行正常我得到了正确的城市名称,但是如果我把它传递给一个函数,它就会替换重音符。
$scope.selectCity = function (city) {
console.log(city.name) //it works fine. The log: Abaújkér
locationService.getLatLngByCityName(city.name).then(function (result){
var cityLatLng = result.data.results[0].geometry.location;
console.log(cityLatLng);
}).catch(function (error) {
console.log(error);
});
};
locationService.getLatLngByCityName返回错误请求:
获取http://maps.googleapis.com/maps/api/geocode/json?address=Aba%FAjk%E9r&sensor=true 400(错误请求)
工厂:
factory.getLatLngByCityName = function (city) {
console.log(city); // it works fine. The log: Abaújkér
var API_URL = 'http://maps.googleapis.com/maps/api/geocode/json?address=' + city;
return $http({
method: 'GET',
url: API_URL,
params: { sensor: true }
})
.catch(function () {
return $q.reject();
});
}
我猜它与编码有关。我怎么能修复googleapis' URL?