私はgoogles apiを使用してアプリをやっています。私は周りを再生のわずか2時間後に私は場所の検索APIを最大限に気づいた。場所api Webサービスで多くのリクエストには、別の方法で行うことは可能ですか?
私がアドレスを検索し、地図に追加できるようにしたいです。これは間違っているのですか?それとも、なぜ私はすでに多くのリクエストを作成していますか? アドレスを他の場所に取得することはできますか?
私はこれが間違っていると言うのは難しいかもしれませんが、リクエストの見た目だけでは、私のコードが多くの要求に応えていると言えるかもしれないと思っていました。
これは私が使用しているコードです:
$scope.initiateMap = function() {
$scope.map = new google.maps.Map(document.getElementById('map'), {
zoom: 11
});
//var marker = new google.maps.Marker({
// position: uluru,
// map: map
//});
navigator.geolocation.getCurrentPosition(function (position) {
var initialLocation = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
$scope.map.setCenter(initialLocation);
}, function() {
console.log('user denied request for position');
});
var input = document.getElementById('address-field');
var searchBox = new google.maps.places.SearchBox(input);
//map.controls[google.maps.ControlPosition.TOP_LEFT].push(input);
$scope.map.addListener('bounds_changed', function() {
searchBox.setBounds($scope.map.getBounds());
});
var markers = [];
searchBox.addListener('places_changed', function() {
var places = searchBox.getPlaces();
//var address_autocomplete = new google.maps.places.Autocomplete(address_input, { types: ['address'] });
//if (places.length == 0) {
// return;
//}
// Clear out the old markers.
markers.forEach(function (marker) {
marker.setMap(null);
});
markers = [];
// For each place, get the icon, name and location.
var bounds = new google.maps.LatLngBounds();
places.forEach(function (place) {
if (!place.geometry) {
console.log("Returned place contains no geometry");
return;
}
if (place.types[0] !== "street_address") {
alert("not a street address");
markers = [];
markers.forEach(function (marker) {
marker.setMap(null);
});
return;
}
$scope.apartment.Address.Longitude = place.geometry.location.lng();
$scope.apartment.Address.Latitude = place.geometry.location.lat();
$scope.apartment.Address.AddressName = place.formatted_address;
var icon = {
url: place.icon,
size: new google.maps.Size(71, 71),
origin: new google.maps.Point(0, 0),
anchor: new google.maps.Point(17, 34),
scaledSize: new google.maps.Size(25, 25)
};
// Create a marker for each place.
markers.push(new google.maps.Marker({
map: $scope.map,
icon: icon,
title: place.name,
position: place.geometry.location
}));
if (place.geometry.viewport) {
// Only geocodes have viewport.
bounds.union(place.geometry.viewport);
} else {
bounds.extend(place.geometry.location);
}
});
$scope.map.fitBounds(bounds);
});
}
Googleのデベロッパーコンソールで、あなたが何件のリクエストをしたかを見ることができます。コード –
を表示するには、問題の画像はそのコンソールからのものです。または、別のイメージが必要ですか? –
これは150kリクエストまで設定できます。https://stackoverflow.com/questions/33055206/google-places-api-how-do-i-increase-the-free-quota-to-150-000 -requests-per-day –