以下のリンクにアクセスする場合: http://maps.googleapis.com/maps/api/geocode/json
私は応答を得ます:
{
"error_message" : "You have exceeded your daily request quota for this API.",
"results" : [],
"status" : "OVER_QUERY_LIMIT"
}
Google Developers Consoleには2つのAPIしかリストされていません。どちらも使用制限の下にあると報告されています。
ジオコードサービスはこれらのいずれかに含まれていますか?含まれていない場合は、使用量を確認したり、アップグレードのために料金を支払う方法はありますか?
Maps API v3リクエスト数1日の割り当て:25k 28日合計:2.37k
Static Maps APIリクエスト数1日の割り当て:25k 28日合計:45.21k
事前に感謝、ジョン
修正してくれたluke_mclachlanに感謝します。
URLにAPIキーのパラメーターがありませんでした。
https://maps.googleapis.com/maps/api/geocode/json?key=AbCdEfGhIjKlMnOpQrStUvWxYz&address=Dallas&sensor=true
APIキーがないと、午前2時30分までにヒットする下限があり、テストには表示されませんでした。
使用されるAPIキーは、Google Developers Consoleの次の場所にあります。 https://console.developers.google.com/project
プロジェクト名をクリックし、左側のメニューで[API&auth]の下の[資格情報]をクリックします。値[API KEY]はすべての使用法で同じです
ジョン
パラメータキーがありませんでした。
https://maps.googleapis.com/maps/api/geocode/json?key=AbCdEfGhIjKlMnOpQrStUvWxYz&address=Dallas&sensor=true
key=AbCdEfGhIjKlMnOpQrStUvWxYz
を追加する必要があります。
私の場合、?address=#202, Hollywood park
。アドレスAPIから#を削除しました。グーグルのAPIが特に空間的特徴を壊している可能性があります#
これがキークエリパラメータの欠落に関連しているだけではありません。 &language=GB®ion=UK
がアプリに置き換えられ、代わりに&language=GB®ion=uk
。これはサーバーベースのクエリであり、APIアクセスはGoogleに保存されているAPI資格情報によって承認されます。 APIは以下を返します。
「このAPIの1日のリクエストクォータを超過しました。GoogleDevelopers Consoleでキーを登録することをお勧めします」
応答は、key
パラメーターなどの何よりも、不正な形式のクエリ文字列に対する一般的な応答のようです。
ini_set('allow_url_fopen', 'on');
//ini_set('allow_url_fopen', '1');
$address=urlencode($address);
$address = str_replace(" ", "+", $address);
$json = file_get_contents("https://maps.google.com/maps/api/geocode/json?key=AIzaSyDq-gfJDoytQE6gj0iHXEy4IZQhgLS70-8&address=$address&sensor=true");
$json = json_decode($json);
$lat = $json->{'results'}[0]->{'geometry'}->{'location'}->{'lat'};
$lng = $json->{'results'}[0]->{'geometry'}->{'location'}->{'lng'};