Google地图中的“您已超出此API的请求配额”

时间:2018-08-04 12:19:20

标签: javascript reactjs google-maps google-maps-api-3

我目前正在使用react-google-map使Google Map在我的React项目中运行,这是我的Map组件:

import React from 'react'
import { compose, withProps, lifecycle } from 'recompose'
import { withScriptjs, withGoogleMap, GoogleMap } from 'react-google-maps'

import MapStyle from  '../../../api/mapStyle'

const Map = ({ children }) => {

  return (

    <GoogleMap
      defaultZoom={15}
      defaultCenter={{ lat: 35.6840299, lng: 51.3861187 }}
    >
      {children}
    </GoogleMap>
  )
}

export default compose(
  withProps({
    googleMapURL: "https://maps.googleapis.com/maps/api/js?key=MY_KEY_HERE",
    loadingElement: <div style={{ height: `100%` }} />,
    containerElement: <div className='map' style={{ height: `100vh` }} />,
    mapElement: <div style={{ height: `100%` }} />
  }),
  withScriptjs,
  withGoogleMap,
)(Map)

您可以看到react-google-map DOC所说的话,这里没什么好看的!

昨天我才刚开始构建地图,然后像往常一样,我进入Google控制台并获得了一个密钥,然后将其放在链接的MY_KEY_HERE部分中,直到今天早上工作正常,今天我是挣扎着:

  

您已超出此API的请求配额

不是:

  

您已超出此API的每日请求配额

如下:

enter image description here

我搜索了Google,发现thisthisthis以及许多其他文件,但找不到该问题的正确答案。

我尝试了什么?

  1. 我在控制台中创建了几个其他键来解决此问题,但是并没有解决,我遇到了相同的You have exceeded your request quota for this API错误
  2. 我使用我在Google上的另一个帐户解决了此问题,我刚刚登录并进入控制台平台,并再次生成了一个密钥,但是我仍然遇到该错误?
  3. 即使在codeSandBox.io中尝试,我仍然遇到相同的错误

我对这个问题真的很困惑,应该如何解决?

2 个答案:

答案 0 :(得分:21)

检查您的项目是否有与其关联的计费帐户。您可以使用以下Google工具:https://mapsplatformtransition.withgoogle.com/

  

“该项目没有计费帐户。您需要添加   该项目的结算信息以继续使用Google地图   平台。每月前200美元是免费的。您只需支付   你用什么您可以随时查看费率并访问您的支出   在您的Google Cloud Platform Console中,您还可以每天进行设置   配额以防止意外增加。您也可以设定   帐单提醒,当费用达到   由您确定的预设阈值。“

它将列出您使用Google Maps的所有项目,并告诉您“添加帐单”(如果项目状态不是“良好”)。

答案 1 :(得分:13)

问题是因为您尚未为项目创建计费帐户。

默认情况下,没有计费帐户的优质地图API每天每键仅允许加载1张地图。

See the error when I try to increase the quota

您可以按照以下步骤解决问题:

  1. 转到Google Cloud Platform控制台。
  2. 为您的项目启用结算帐户。
  3. 选择包含要查看的API的项目。
  4. 从仪表板上的API列表中,单击API的名称。
  5. 在页面顶部附近,单击“配额”或“用法”,然后根据您的用法设置限制。