0

私の「nearbySearch」Googleプレイス検索でデータが見つからない理由を知っている人はいますか?Google Places JS API weekday_text

places APIを使用して近くの検索を行うと、すべてのweekday_text配列が空として返されますが、最初の検索でいずれかの場所に「getDetails」リクエストを行うと、weekday_textが返されます。

http://codepen.io/anon/pen/RGBVJR

var map; 
 
var service; 
 

 
// Nearby search 
 
var showPosition = function() { 
 

 
    var geolocation = new google.maps.LatLng(51.5074, -0.1278); 
 

 
    map = new google.maps.Map(document.getElementById('map'), { 
 
    center: geolocation, 
 
    zoom: 15 
 
    }); 
 

 
    var request = { 
 
    location: geolocation, 
 
    radius: '500', 
 
    types: ['bar'] 
 
    }; 
 

 
    service = new google.maps.places.PlacesService(map); 
 
    service.nearbySearch(request, callback); 
 

 
}; 
 
showPosition(); 
 

 
function callback(results, status) { 
 

 
    if (status == google.maps.places.PlacesServiceStatus.OK) { 
 
    console.log(results); 
 
    } 
 

 
} 
 

 
// Direct location check 
 
function altTest() { 
 

 
    var map = new google.maps.Map(document.getElementById('map'), { 
 
    center: new google.maps.LatLng(51.5074, -0.1278), 
 
    zoom: 15 
 
    }); 
 

 
    var service = new google.maps.places.PlacesService(map); 
 

 
    service.getDetails({ 
 
    placeId: 'ChIJ78fbAc8EdkgRWG1dhffz9AY' 
 
    }, function (place, status) { 
 
    if (status === google.maps.places.PlacesServiceStatus.OK) { 
 
     console.log(place.opening_hours.weekday_text); 
 
    } 
 
    }); 
 

 
} 
 

 
altTest();
<div id="map"> 
 
</div> 
 
<script src="https://maps.googleapis.com/maps/api/js?libraries=places&sensor=false"></script>

データの不一致を確認するためにconsole.logsを参照してください。

これはなぜですか?平日のリクエストを取得するために2回目のAPIリクエストを行う必要はありません。

おかげで、PlaceResultオブジェクトの配列を返しますnearbySearch

トム

答えて

1

hereのように、PlaceResultにはweekday_textプロパティはありません。

+2

ドキュメントでは、詳細要求によって同じタイプのオブジェクトが返されることも記載されています。私はドキュメントが古くなっていると言います。 – geocodezip

+0

私は多くのAPIコールを行う必要があるように見え始めます。誰かがこれを行う効率的な方法を見つけましたか? – Thomas