[解決済み] Google Places API ウェブサービスを使用して、場所の詳細情報を取得するにはどうすればよいですか?
質問
Google Places API ウェブサービスを使用して、場所の詳細リクエストから電話番号などのデータを取得しようとしています。次のようなレスポンスデータを取得することができません。 案内 同じ住所から場所IDを取得しているにもかかわらず、です。
取得した場所IDがガイドのものと違うのですが。私の場所IDは「ChIJ8UadyjeuEmsRDt5QbiDg720」、相手の場所IDは「ChIJN1t_tDeuEmsRUsoyG83frY4」です。もし私が彼らの場所IDを使用すれば、私は必要なすべてのデータを得ることができます。
取得できるデータは、address_components, adr_address, formatted_address, geometry, icon, id, name, place_id, reference, scope, types, url, vicinityのみです。リクエストから電話番号のようなデータを取得するにはどうすればよいですか?
var placesRequest = $http({
method: "post",
url: "https://maps.googleapis.com/maps/api/place/details/json?placeid=" + <my place id>+"&key=<my key>"
});
placesRequest.success(function (data) {
console.log("data", data);
});
このコードを使用してGoogle Maps JavaScript APIを使用しても同じ問題が発生します。
function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
center: {lat: -33.866, lng: 151.196},
zoom: 15
});
google.maps.InfoWindow();
var service = new google.maps.places.PlacesService(map);
service.getDetails({
placeId: $scope.newUserData.address.place_id
}, function(place, status) {
if (status === google.maps.places.PlacesServiceStatus.OK) {
if(place) {
console.log("place", place);
}
}
});
}
initMap();
解決方法は?
Google Places API に電話番号がないのは、Google Maps にその特定の場所の電話番号がないためです。 Google Mapsで電話番号のある場所の詳細を要求すると、それが返されます。
ChIJ8UadyjeuEmsRDt5QbiDg720 をよく見てみましょう。 これは、quot;Workplace 6" という名前のオフィスビルです。
premise
. のGoogleマップのURLにアクセスすると、そのURLには
url
フィールド(
https://maps.google.com/?q=Workplace+6&ftid=0x6b12ae37ca9d46f1:0x6defe0206e50de0e
) にも電話番号が記載されていないことに気づくでしょう。
もう一つのPlace IDであるChIJN1t_tDeuEmsRUsoyG83frY4は、その建物内にある企業の一つ(Google)のものである。 また
address_components
または
formatted_address
をクリックすると、両者の住所が全く同じでないことがわかります(Googleの住所はそのビルの5階です)。
一般に、ある場所のフィールドが存在しないことがあります。 これはGoogle Mapsがそのフィールドを知らない場合や、単に該当しない場合です。
opening_hours
をフランスで使用することができます。) のドキュメントにあるように
場所 詳細 結果
と言っています。
各結果 かもしれない には、以下のフィールドが含まれます。
[強調]
関連
-
Vue+ElementUIによる大規模なフォームの処理例
-
WeChatアプレット用ユニアプリによるグローバルシェアリング
-
vueはopenlayersを使用してスカイマップとガオードマップをロードする
-
Vueのクラススタイルの使い方の詳細
-
Vueでルートネスティングを実装する例
-
Vueの「データを聴く」原則を解説
-
Vueのフォームイベントのデータバインディングの説明
-
[解決済み】エラー。Ionic使用中にモジュール '../lib/utils/unsupported.js' が見つかりませんでした。
-
フロントエンド null のプロパティ 'disabled' を読み取れない 問題が解決された
-
[解決済み] jQueryを使ってドロップダウンリスト(セレクトボックス)から選択されたテキストを取得する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
vueにおけるv-forループオブジェクトのプロパティ
-
Vueのフォームイベントのデータバインディングの説明
-
Vueのフィルタの説明
-
[解決済み] Web API エラー - このリクエストはブロックされました; コンテンツは HTTPS で提供されなければなりません
-
[解決済み] TypeError: $.ajax(...) is not a function?
-
[解決済み】 env: node: macにそのようなファイルやディレクトリはありません
-
[解決済み】 Uncaught TypeError : undefined のプロパティ 'replace' を読み取れない In Grid
-
[解決済み】「.addEventListener is not a function」なぜこのエラーが発生するのか?
-
nodejs unhandledPromiseRejectionWarning メッセージ
-
フロントエンド null のプロパティ 'disabled' を読み取れない 問題が解決された