Я установил Realm Object Server с помощью метода контейнера докеров на виртуальную машину на облачной платформе Google. Контейнер запущен, и я могу подключиться в браузере и увидеть страницу ROS. Я могу подключиться к нему с помощью Realm Studio и добавить пользователя.
У меня есть приложение nodeJS, работающее локально на Mac, и я пытаюсь использовать его для входа в систему и записи в область на сервере. Когда я запускаю приложение, я получаю сообщение об ошибке, и пользователь возвращает пустой объект. Не уверен, что делаю не так. Я новичок в NodeJS.
Код:
var theRealm;
const serverUrl = "http://xx.xx.xx.xx:9080";
const username = "xxxx";
const password = "xxxx";
var token = "long-token-for-enterprise-trial";
Realm.Sync.setFeatureToken(token);
console.log("Will log in user");
Realm.Sync.User.login(serverUrl, username, password)
.then(user => {
``
// user is logged in
console.log("user is logged in " + util.inspect(user));
// do stuff ...
console.log("Will create config");
const config = {
schema:[
schema.interventionSchema,
schema.reportSchema
],
sync: {
user: user,
url: serverUrl
}
};
console.log("Will open realm with config: " + config);
const realm = Realm.open(config)
.then(realm => {
// use the realm instance here
console.log("Realm is active " + realm);
console.log("Will create Realm");
theRealm = new Realm({
path:'model/realm_db/theRealm.realm',
schema:[
schema.interventionSchema,
schema.reportSchema
]
});
console.log("Did create Realm: " + theRealm);
})
.catch(error => {
// Handle the error here if something went wrong
console.log("Error when opening Realm: " + error);
});
})
.catch(error => {
// an auth error has occurred
console.log("Error when logging in user: " + error);
});
Выход:
Will log in user
Server is running...
user is logged in {}
Will create config
Will open realm with config: [object Object]
TypeError: Cannot read property 'token_data' of undefined
at performFetch.then.then (/pathToProject/node_modules/realm/lib/user-methods.js:203:49)
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:188:7)
TypeError: Cannot read property 'token_data' of undefined
at performFetch.then.then (/pathToProject/node_modules/realm/lib/user-methods.js:203:49)
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:188:7)
Ошибка @ user-methods.js: 203: 49
const tokenData = json.access_token.token_data;
json: {user_token: {token: 'xxxxxxxx', token_data: {app_id: 'io.realm.Auth', identity: 'xxxxxxx', salt: 'xxxxxxxx', срок действия: 1522930743, is_admin: false}}};
Итак, json.access_token.token_data не определен, но json. user_token.token_data не будет.