本页面介绍了如何设置本地环境以使用 curl 命令试验 API 密钥。
准备工作
- 登录您的 Google Cloud 账号。如果您是新手 Google Cloud, 请创建一个账号来评估我们的产品在 实际场景中的表现。新客户还可获享 $300 赠金,用于 运行、测试和部署工作负载。
-
安装 Google Cloud CLI。
-
如果您使用的是外部身份提供方 (IdP),则必须先使用联合身份登录 gcloud CLI。
-
如需初始化 gcloud CLI,请运行以下命令:
gcloud init -
选择或创建项目所需角色
- 选择项目:选择项目不需要特定的 IAM 角色,您可以选择您已被 授予角色的任何项目。
-
创建项目:如需创建项目,您需要 Project Creator 角色
(
roles/resourcemanager.projectCreator),该角色包含resourcemanager.projects.create权限。了解如何授予 角色。
-
创建 Google Cloud 项目:
gcloud projects create PROJECT_ID
将
PROJECT_ID替换为您要创建的 Google Cloud 项目的名称。 -
选择您创建的 Google Cloud 项目:
gcloud config set project PROJECT_ID
将
PROJECT_ID替换为您的 Google Cloud 项目名称。
-
验证您的 Google Cloud 项目是否已启用结算功能。
启用 API 密钥 API:
启用 API 所需的角色
如需启用 API,您需要 Service Usage Admin IAM 角色 (
roles/serviceusage.serviceUsageAdmin),该角色包含serviceusage.services.enable权限。了解如何授予 角色。gcloud services enable apikeys.googleapis.com
-
将角色授予您的用户账号。对以下每个 IAM 角色运行以下命令一次:
roles/serviceusage.apiKeysAdmingcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
替换以下内容:
PROJECT_ID:您的项目 ID。USER_IDENTIFIER:您的用户账号的标识符。 例如,myemail@example.com。ROLE:您授予用户账号的 IAM 角色。
-
安装 Google Cloud CLI。
-
如果您使用的是外部身份提供方 (IdP),则必须先使用联合身份登录 gcloud CLI。
-
如需初始化 gcloud CLI,请运行以下命令:
gcloud init -
选择或创建项目所需角色
- 选择项目:选择项目不需要特定的 IAM 角色,您可以选择您已被 授予角色的任何项目。
-
创建项目:如需创建项目,您需要 Project Creator 角色
(
roles/resourcemanager.projectCreator),该角色包含resourcemanager.projects.create权限。了解如何授予 角色。
-
创建 Google Cloud 项目:
gcloud projects create PROJECT_ID
将
PROJECT_ID替换为您要创建的 Google Cloud 项目的名称。 -
选择您创建的 Google Cloud 项目:
gcloud config set project PROJECT_ID
将
PROJECT_ID替换为您的 Google Cloud 项目名称。
-
验证您的 Google Cloud 项目是否已启用结算功能。
启用 API 密钥 API:
启用 API 所需的角色
如需启用 API,您需要 Service Usage Admin IAM 角色 (
roles/serviceusage.serviceUsageAdmin),该角色包含serviceusage.services.enable权限。了解如何授予 角色。gcloud services enable apikeys.googleapis.com
-
将角色授予您的用户账号。对以下每个 IAM 角色运行以下命令一次:
roles/serviceusage.apiKeysAdmingcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
替换以下内容:
PROJECT_ID:您的项目 ID。USER_IDENTIFIER:您的用户账号的标识符。 例如,myemail@example.com。ROLE:您授予用户账号的 IAM 角色。
测试 API 密钥 API
获取您在其中启用了 API 密钥的项目的项目编号 。
为调用 API 定义一个方便的 shell 别名:
alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"'发出请求以获取项目中的 API 密钥列表:
gcurl https://apikeys.googleapis.com/v2/projects/YOUR_PROJECT_NUMBER/locations/global/keys
成功后,您会收到类似于以下内容的响应:
{ "keys": [ { "name": "projects/12345678/locations/global/keys/2885bf87-5b84-47fa-92af-08c3e9337349", "displayName": "API key 2", "createTime": "2019-05-29T22:07:22.036Z", "uid": "2885bf87-5b84-47fa-92af-08c3e9337349", "updateTime": "2019-05-29T22:07:22.058623Z", "restrictions": { "androidKeyRestrictions": {} }, "etag": "zHib8eXEMCxe4ayQEbIaZg==" }, { "name": "projects/12345678/locations/global/keys/a4db08b7-5729-4ba9-8c08-f2df493465a1", "displayName": "API key 1", "createTime": "2019-05-29T22:06:58.844Z", "uid": "a4db08b7-5729-4ba9-8c08-f2df493465a1", "updateTime": "2019-05-29T22:06:58.855103Z", "restrictions": { "androidKeyRestrictions": {} }, "etag": "0L5KcPMGoNi53K5+FqPxiw==" } ] }