Google 地图 API 未在本地主机上返回值,但在实时服务器上工作正常

问题描述 投票:0回答:1

Google 地图 API 在实时服务器上正常运行,但在本地主机上运行时无法返回值。

(控制器页面:)

    // Make a request to the Google Maps Geocoding API

     $response = $geoclient->request('GET', 'https://maps.googleapis.com/maps/api/geocode/json', [
        'query' => [
           'address' => $address,
            'key' => $api_key,
        ]
  ]);

  $data = json_decode($response->getBody(), true);

  dd($data);

(实时服务器和本地主机的结果不同:) 不同结果截图

Google 地图 API 在本地主机和实时服务器上均正常运行。该项目闲置几天后,它在本地主机上停止工作,但在实时服务器上仍然运行良好。

laravel google-maps google-maps-api-3 google-api
1个回答
0
投票

您面临的问题是在本地主机上使用 Google Maps API 时的常见问题。以下是它可能不起作用的原因以及修复方法:

原因:API 密钥受限

默认情况下,Google 地图 API 密钥通常会限制对特定域(例如您的实时服务器 URL)的访问。这可以防止未经授权使用 API。

注册localhost:通过注册localhost就可以轻松解决

转到 Google Cloud Console 并导航到您项目的 API 库。 找到 Google Maps Javascript API 并确保其已启用。 在“凭据”部分中,找到您的 API 密钥。 单击“限制”,然后在“API 限制”下选择“无”或添加“localhost:端口号”(将“端口号”替换为您的开发端口,例如 localhost:8080)。

其他提示:

清除浏览器缓存:有时缓存的数据可能会产生干扰。清除浏览器缓存并重试。 检查 API 密钥:仔细检查您在代码中使用的 API 密钥是否正确,并且是否已启用所需的服务(例如地理编码 API)。 错误消息:打开浏览器的开发者控制台(通常使用 F12)并查找与 Google Maps API 相关的错误消息。 这些可以提供有关该问题的更具体的线索。我希望这有效!

© www.soinside.com 2019 - 2024. All rights reserved.