CloudKit数据库查询问题

时间:2016-09-20 21:54:02

标签: database web cloudkit

我刚刚开始构建一个Web应用程序,出于某种原因,我必须将CloudKit及其数据库用于我的后端。

我尝试了一个非常愚蠢的数据库查询,并打算在前端看到结果。这是我的代码:

CloudKit.configure({
containers: [{
    containerIdentifier: my identifier,
    apiToken: my api token,
    environment: 'development'
  }]
});

var container = CloudKit.getDefaultContainer();
var DB = container.publicCloudDatabase;

var query = {recordType : 'Request'};

DB.performQuery(query).then(function(response){
  if (response.hasErrors) {
        throw response.errors[0];
    } else {
        console.log(response);
    }
});

但是,我一直收到此authentication_failed错误:

cloudkit.js:3 Uncaught (in promise) t {_ckErrorCode: "AUTHENTICATION_FAILED", _uuid: "4ef8ba12-eb00-408f-9a1c-6e8b4de84ec8", _reason: "no auth method found", _serverErrorCode: "AUTHENTICATION_FAILED", _extensionErrorCode: undefined…}

我尝试使用相同的代码获取记录,并且工作正常。 用户中未记录的错误是什么?如果是这样,CloudKit仪表板中是否有任何配置允许来自某个URL的用户在不登录的情况下查询数据库? 谢谢!

1 个答案:

答案 0 :(得分:1)

检查containerIdentifier值。当我使用API​​令牌的标识符名称而不是应用程序名称中生成的iCloud标识符时,我遇到了类似的问题。您还可以使用使用CloudKit目录测试

链接验证您的令牌

enter image description here