2016-09-20 2 views
0

Я только начал создавать веб-приложение, и по какой-то причине мне нужно использовать CloudKit и его базу данных для моего бэкэнд.Ошибка запроса базы данных CloudKit

Я пробовал действительно глупый запрос базы данных и хотел увидеть результаты на frontend. Вот мой код:

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 Dashboard, чтобы пользователи с определенного URL-адреса могли запрашивать базу данных без входа? Спасибо!

ответ

0

Проверьте значение идентификатора контейнера. У меня была аналогичная проблема, когда я использовал имя идентификатора Token API вместо сгенерированного идентификатора iCloud из имени приложения. Вы также можете проверить свой маркер с Теста ссылка с CloudKit Каталог

enter image description here

Смежные вопросы