公共API访问无法使用数据存储javascript API的gap.client

Public API access not working with gapi.client for datastore javascript API

本文关键字:API javascript 存储 gap client 数据 访问 公共      更新时间:2023-09-26

我是谷歌云数据存储的新手。我目前正在尝试使用我在开发人员控制台创建的API键来查询我的数据集。下面是我调用数据存储API的代码片段(我使用的是gap.client):

gapi.client.setApiKey('API_KEY');
gapi.client.load('datastore', 'v1beta2').then(function() { 
    console.log('loaded.'); 
    gapi.client.datastore.datasets.runQuery({'datasetId' : 'myProjectId','gqlQuery': {  'queryString': 'select * from locationReport'}}).then(function(resp) {
            console.log(resp.result);
        }, function(reason) {
            console.log('Error: ' + reason.result.error.message);}
        );
});

这给我返回了以下响应:

响应标头:

HTTP/1.1 401 Unauthorized
Vary: Origin
Vary: X-Origin
WWW-Authenticate: Bearer realm="https://accounts.google.com/"
Content-Type: text/html; charset=UTF-8
Content-Encoding: gzip
Date: Mon, 22 Jun 2015 14:49:06 GMT
Expires: Mon, 22 Jun 2015 14:49:06 GMT
Cache-Control: private, max-age=0
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
Server: GSE
Alternate-Protocol: 443:quic,p=1
Transfer-Encoding: chunked

响应主体:

需要登录

尽管这里提到可以使用公共api访问数据,但我仍然无法做到这一点

请帮我做这个。让我知道是否有可能或有其他方法从数据存储中检索数据而不需要用户权限,如OAuth

云数据存储API读取和写入私有用户数据,因此需要OAuth 2.0凭据。本页提供了有关如何使用JavaScript客户端执行此操作的其他信息。