首页 > 解决方案 > 使用 api 密钥访问 google datastore rest api

问题描述

当我尝试使用带有 api 密钥的数据存储重置 api 时,我得到以下信息:

{
"error": {
    "code": 401,
    "message": "Request is missing required authentication credential. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.",
    "status": "UNAUTHENTICATED"
}

}

我的网址如下所示: https ://datastore.googleapis.com/v1/projects/ {my_project_id}:beginTransaction?key={my_api_key}

在文档中,您可以选择使用 oauth 或 api 密钥,但我看不到在该页面上输入 api 密钥的任何方法: https ://cloud.google.com/datastore/docs/reference/data/rest/v1 /projects/beginTransaction

如何使用我的 api 密钥访问数据存储 api?

标签: google-apis-explorer

解决方案


API 密钥不是身份验证,它们只是授权。数据存储 API 需要身份验证和授权才能调用。换句话说,它需要知道你是,而不仅仅是允许你调用那个 API。它使用有关您是的信息来验证您是否被允许访问您尝试访问的特定数据。否则,任何有权调用数据存储 API 的人都可以访问其他任何人的数据存储数据。

因此,您需要使用 OAuth2 身份验证,而不是 API 密钥(授权)。有关详细信息,请参阅该参考页面上的授权范围。

请注意,“试用此 API”工具只是帮助您了解 API 的工作原理,而不是强迫您始终做正确的事情,这就是为什么它允许您选择仅使用 API 密钥的原因。


推荐阅读