Как инициализировать список Realm?

Я работаю с учебным пособием realm swift, которое можно найти здесь.

После того, как я успешно завершил обучение на своем локальном компьютере, я развернул объектный сервер области на сервере цифрового океана Ubuntu.

Теперь, когда я запускаю код на своей машине разработки, указывающий на сервер, я получаю сообщение об ошибке:

Connecting to endpoint '139.59.102.91:80' (1/1)
2017-02-20 20:29:27.576 RealmTasksTutorial[9998:243100] Sync: Connection[1]: Failed to connect to endpoint '139.59.102.91:80': Connection refused

Проблема может заключаться в том, что когда вы работаете с учебником, вам нужно запустить их приложение для Mac и создать задачу. Затем вы переходите к следующему шагу и создаете приложение для iOS. В приложении iOS в SetupRealm() они синхронизируются с сервером области со следующими строками:

if self.items.realm == nil, let list =  self.realm.objects(TaskList.self).first {
 self.items = list.items
}

Это заполнит только self.items, если сервер области добавил эту первую задачу (приложением Mac). Таким образом, учебник работает нормально, когда все выполняется на моей локальной машине.

Проблема заключается в том, что я развертываю объектный сервер области в экземпляре Ubuntu цифрового океана. Нет приложения для Mac, чтобы выполнить эту первую задачу.

Есть ли лучший способ проверить область и инициализировать/заполнить self.items?


person grabury    schedule 20.02.2017    source источник


Ответы (1)


Я считаю, что проблема связана с портом, который вы используете.

Конфигурация по умолчанию сервера объектов Realm работает на порту 9080 для HTTP/WebSocket и 9443, если вы включаете TLS. Похоже, ваш клиент пытается подключиться к порту 80, порту по умолчанию, если вы не укажете ничего другого.

Попробуйте добавить :9080 к URL-адресам аутентификации и области.

person teotwaki    schedule 23.02.2017