Google maps javascript API 3 генерация ключей

Я пытаюсь встроить карту Google на свой веб-сайт с помощью javasrcipt API 3 Google Maps. Я сгенерировал ключ и ввел его следующим образом:

<script type="text/javascript"
  src="https://maps.googleapis.com/maps/api/js?key=AIzSyBZsRvsDrBFh4-kVadHK&sensor=true">
</script>

(Посмотрите на параметр key= в предыдущей строке кода).

Когда я открываю свое приложение, я получаю уведомление о том, что введенный ключ недействителен, и карта вылетает.

Может ли кто-нибудь помочь мне в этом!


person SALAMAT Med Ayman    schedule 12.03.2014    source источник
comment
Похоже, вы не правильно сгенерировали ключ! Можно убрать ключевой параметр и карта должна работать   -  person duncan    schedule 12.03.2014
comment
Ключ генерируется автоматически самими Google, поэтому ключ сам по себе предположительно действителен. Мне просто интересно, есть ли что-то в конфигурации, что я должен изменить?   -  person SALAMAT Med Ayman    schedule 12.03.2014
comment
Вы авторизовали этот ключ для Google Maps API v3? Это ключ браузера? Верны ли разрешенные рефереры (или, если это ключ сервера, правильные ли разрешенные IP-адреса)?   -  person geocodezip    schedule 12.03.2014
comment
Да, я авторизовал ключ на своей консоли, и это ключ браузера, а не ключ сервера. Должно быть, я сделал что-то не так в какой-то конфигурации :/ и я просто не могу этого заметить.   -  person SALAMAT Med Ayman    schedule 12.03.2014


Ответы (1)


Ключ браузера используется, когда вы загружаете другие API через javascript.

Вы можете упростить включение с помощью API Карт и API JavaScript

<script src="https://maps.googleapis.com/maps/api/js?v=3&sensor=true"></script>
<script src="https://apis.google.com/js/client.js?onload=init"></script>

и внутри вашего кода, скажем, Fusion Tables, вы можете добавить его следующим образом:

function init() {
    gapi.client.load('fusiontables', 'v1', function() {
        gapi.client.setApiKey( "YOUR_BROWSER_API_KEY_HERE" );
        //Other stuff to do on loading this
        gapi.client.fusiontables.query.sql({sql:["SELECT * FROM", TABLE_NAME].join(' '), fields:'rows, columns'}).execute( function(json) {
            //Do what you need to parse the json response
            //Set up KML Layers
            //etc... make sure to check if maps is loaded too
            json.rows.forEach( function(t) {
                console.log( t );
            });
        });
    });
}

И вы сможете делать авторизованные (не OAuth 2.0) вещи таким образом.

person Sunny Patel    schedule 13.03.2014