No results found
We couldn't find anything using that term, please try searching for something else.
2024-11-26 只有提供正确身份验证凭据的用户才能调用 API,这样可防止 Google Maps Platform 产品遭到未经授权的使用。这些凭据采用 API 密钥的形式;API 密钥是具有唯一性的字母数字字符串,可将您的 Google 结算账号与您的项目以及特定 API 或 SDK 相关联。 本指南介绍了如
只有提供正确身份验证凭据的用户才能调用 API,这样可防止 Google Maps Platform 产品遭到未经授权的使用。这些凭据采用 API 密钥的形式;API 密钥是具有唯一性的字母数字字符串,可将您的 Google 结算账号与您的项目以及特定 API 或 SDK 相关联。
本指南介绍了如何为 Google Maps Platform 创建、限制和使用 API 密钥。
在开始使用 Maps JavaScript API 之前,请确保您的项目已关联结算账号并且启用了 Maps JavaScript API。如需了解详情,请参阅在 Cloud 控制台中进行设置。
API 密钥是唯一标识符,用于对与您的项目相关联的请求进行身份验证,以便您使用相关产品和执行结算。您必须至少有一个与您的项目相关联的 API 密钥。
如需创建 API 密钥,请执行以下操作:
前往 Google Maps Platform > 凭据页面。
前往“凭据”页面
gcloud alpha services api-keys create \ --project "" \ --display-name ""
不妨详细了解 Google Cloud SDK、Cloud SDK 安装和以下命令:
Google 强烈建议您限制 API 密钥,仅将其用于您的应用所需要的 API。限制 API 密钥可防止您的应用收到无正当理由的请求,从而提高应用安全性。如需了解详情,请参阅 API 安全性最佳实践。
在 Cloud 控制台中限制 API 密钥时,应用限制会覆盖在 API 限制下启用的任何 API。请遵循最佳实践,为每个应用以及提供该应用的每个平台创建单独的 API 密钥。
如需限制 API 密钥,请执行以下操作:
前往 Google Maps Platform > 凭据页面。
前往“凭据”页面
https://*.google.com
表示接受所有以 .google.com
结尾的网站,前提是这些网站通过 HTTPS 进行访问)。请注意,如果指定 www.domain.com,它将充当通配符 www.domain.com/*,并为该主机名上的任何子路径授权。https://
和 http://
引荐来源网址架构应按原样指定。对于其他网址协议,您必须使用特殊表示法。例如,对于 file:///path/to/
,应采用 __file_url__//path/to/*
格式加以表示。启用网站之后,请务必监控您的使用情况,确保与您的预期相符。支持以下协议:about://
、app://
、applewebdata://
、asset://
、chrome://
、content://
、file://
、ftp://
、ionic://
、local://
、ms-appx://
、ms-appx-web://
、ms-local-stream://
、prism://
、qrc://
、res://
、saphtmlp://
。
列出现有密钥。
gcloud services api-keys list --project=""
清除对现有密钥的现有限制。
gcloud alpha services api-keys update "projects//keys/" \ --clear-restrictions
为现有密钥设置新限制。
gcloud alpha services api-keys update "projects//keys/" \ --api-target="maps-backend.googleapis.com" --allowed-referrers=""
不妨详细了解 Google Cloud SDK、Cloud SDK 安装和以下命令:
您必须在每个 Maps JavaScript API 请求中添加 API 密钥。在下例中,需要将 YOUR_API_KEY
替换为您的 API 密钥。
<script>
(g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({
key: "YOUR_API_KEY",
v: "weekly",
// Use the 'v' parameter to indicate the version to use (weekly, beta, alpha, etc.).
// Add other bootstrap parameters as needed, using camel case.
});
</script>