正確な場所を指定するが、正確な店舗名は指定しない(ワイルドカード検索など)ことで、Google MapsAPIV3の「nearbySearch」を実行する方法を模索しています。
たとえば、リクエストが「サンフランシスコ」の「スターバックス」であった場合、その場所のタイトルに単語が多いかどうかに関係なく、「スターバックス」と呼ばれるすべてのプレイスが返されます。たとえば、結果には「スターバックスコーヒー」、「スターバックススミスストリート」が含まれます。 「または単に「スターバックス」。現在、「スターバックス」という同一の一致のみが検出されているようです。
コード(詳細はこちら):
var map;
var service;
var infowindow;
function initialize() {
// Specify lat/lng of search location
var SanFran = new google.maps.LatLng(37.777119,-122.41964);
// Create new map object
map = new google.maps.Map(document.getElementById('map'), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: SanFran,
zoom: 15
});
// Create request parametres
var request = {
location: SanFran
, radius: '500',
, name: "Starbucks"
};
// Call the nearby search using the parametres
service = new google.maps.places.PlacesService(map);
service.nearbySearch(request, callback);
}
// Asynchronous marker creation at returned locations
function callback(results, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
for (var i = 0; i < results.length; i++) {
var place = results[i];
createMarker(results[i]);
}
}
}
私はいくつかの読書をしました、そしてそれはAPI3がワイルドカード検索を提供しないように見えますが、私は回避策があることを望んでいます。
前もって感謝します!