Asp.net mvc 谷歌地图未显示,给出缺少密钥的错误

Asp.net mvc 谷歌地图未显示,给出缺少密钥的错误,asp.net-mvc,api,google-maps,google-maps-api-3,Asp.net Mvc,Api,Google Maps,Google Maps Api 3,我是谷歌地图的新手。我添加了以下代码来显示它: <!DOCTYPE html> <html> <head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no"> <meta charset="utf-8"> <title>Marker Clustering</title> <style&g

我是谷歌地图的新手。我添加了以下代码来显示它:

<!DOCTYPE html>
<html>
  <head>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
    <meta charset="utf-8">
    <title>Marker Clustering</title>
    <style>
      /* Always set the map height explicitly to define the size of the div
       * element that contains the map. */
      #map {
        height: 100%;
      }
      /* Optional: Makes the sample page fill the window. */
      html, body {
        height: 100%;
        margin: 0;
        padding: 0;
      }
    </style>
  </head>
  <body>
    <div id="map"></div>
    <script>

      function initMap() {

        var map = new google.maps.Map(document.getElementById('map'), {
          zoom: 3,
          center: {lat: -28.024, lng: 140.887}
        });

        // Create an array of alphabetical characters used to label the markers.
        var labels = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';

        // Add some markers to the map.
        // Note: The code uses the JavaScript Array.prototype.map() method to
        // create an array of markers based on a given "locations" array.
        // The map() method here has nothing to do with the Google Maps API.
        var markers = locations.map(function(location, i) {
          return new google.maps.Marker({
            position: location,
            label: labels[i % labels.length]
          });
        });

        // Add a marker clusterer to manage the markers.
        var markerCluster = new MarkerClusterer(map, markers,
            {imagePath: 'https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m'});
      }
      var locations = [
        {lat: -31.563910, lng: 147.154312},
        {lat: -33.718234, lng: 150.363181},
        {lat: -33.727111, lng: 150.371124},
        {lat: -33.848588, lng: 151.209834},
        {lat: -33.851702, lng: 151.216968},
        {lat: -34.671264, lng: 150.863657},
        {lat: -35.304724, lng: 148.662905},
        {lat: -36.817685, lng: 175.699196},
        {lat: -36.828611, lng: 175.790222},
        {lat: -37.750000, lng: 145.116667},
        {lat: -37.759859, lng: 145.128708},
        {lat: -37.765015, lng: 145.133858},
        {lat: -37.770104, lng: 145.143299},
        {lat: -37.773700, lng: 145.145187},
        {lat: -37.774785, lng: 145.137978},
        {lat: -37.819616, lng: 144.968119},
        {lat: -38.330766, lng: 144.695692},
        {lat: -39.927193, lng: 175.053218},
        {lat: -41.330162, lng: 174.865694},
        {lat: -42.734358, lng: 147.439506},
        {lat: -42.734358, lng: 147.501315},
        {lat: -42.735258, lng: 147.438000},
        {lat: -43.999792, lng: 170.463352}
      ]
    </script>
    <script src="https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/markerclusterer.js">
    </script>
    <script async defer
    src="https://maps.googleapis.com/maps/api/js?key=Key&callback=initMap">
    </script>
  </body>
</html>
我想,这是我们必须购买的钥匙,直到我对它的研究程度。请问有人可以指导如何解决这个关键问题,或者有没有其他方法可以用来在网站上显示地图。我确实从谷歌云平台创建了密钥,并将其放置在所需的位置,但代码只是显示了地图的一瞥,然后消失,给出了密钥的错误。
提前感谢。

尝试从以下资源中删除关键参数

<script async defer src="https://maps.googleapis.com/maps/api/js?callback=initMap">
它将在开发环境中渲染地图。所以,你可以在开发模式中开发你想要的任何东西

我已经开发了谷歌地图网络应用程序,没有关键参数的开发环境,这是完美的工作


地图将仅在开发环境中显示用于开发目的的消息。

由于您已经从中生成了API密钥,请确保:

A.包括来自GCP控制台的API密钥,如下图所示:

<script async defer src="https://maps.googleapis.com/maps/api/js?key=Aiza*******&callback=initMap"></script>
B.确保您拥有与您的API密钥所属的项目关联的有效账单帐户

如果不启用计费帐户,则每天只能加载地图一次。 不要害怕添加您的帐单帐户,因为除非您升级您的帐单帐户,否则您将不会被收取费用。 启用您的计费帐户后,您将有权获得一次性300美元的免费积分,可用于谷歌云平台产品,以及每月定期200美元的免费积分,仅用于谷歌地图平台。如果您耗尽了免费积分,您将收到一个超过查询限制的错误,并且不会收取任何费用,如果您不想中断您的使用,您可以升级您的计费帐户,并在您使用所有免费信用卡后相应地向您计费。
注意:还请确保启用。

API提供的某些功能要求您使用密钥。不管你是否在发展。所以这不是一个合适的解决方案,当然也不是一个长期的解决方案。但是对于开发来说,它可能是好的。这不是一个合适的答案。在这种开发目的模式下是否可以显示标记?不可能用给定的代码重现错误。您生成了什么密钥以及如何生成?你提到的钥匙需要放在什么地方?分享你收到的准确完整的错误怎么样?有没有其他方法可以不使用键或不使用googleMapApI来使用地图。在我的网站上突出显示特定区域地图的其他可能方式有哪些?目前,所有Google Maps API都需要使用API键,如果您只需要在地图中显示特定区域,您可以尝试嵌入您的网站,你只需要创建你想在你的网站上显示的地图,并获得你网站的嵌入链接。这样,您就不需要获取API密钥,因为这不需要您在网站中包含APiI密钥。好的,谢谢您的澄清。我试试看。