Проблема с доступом к таблице базы данных SQL Azure из приложения iOS swift - PullRequest
0 голосов
/ 29 марта 2019

Я создал демонстрационное приложение, которое аутентифицирует пользователя из Azure Active Directory и может выполнять синхронизацию с простыми таблицами. Когда я подключил службу приложений на портале Azure к базе данных SQL, то при извлечении данных таблицы в приложении iOS swift выдается ошибка 401. Ниже приведен фрагмент кода.

let client = MSClient(applicationURLString: "URL String")

        let managedObjectContext = (UIApplication.shared.delegate as! AppDelegate).managedObjectContext!

        self.store = MSCoreDataStore(managedObjectContext: managedObjectContext)

        client.syncContext = MSSyncContext(delegate: nil, dataSource: self.store, callback: nil)

        self.table = client.syncTable(withName: "table name")

        self.refreshControl?.addTarget(self, action: #selector(ActivityTableViewController.onRefresh(_:)), for: UIControlEvents.valueChanged)

вызов API (вызов onRefresh):

self.table!.pull(with: self.table?.query(), queryId: "AllRecords") {

            (error) -> Void in DispatchQueue.main.async {
                UIApplication.shared.isNetworkActivityIndicatorVisible = false
                // throws 401 error here
            }
        }

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

Я связал базу данных SQL со службой приложений и создал простую таблицу с тем же именем, что и в базе данных SQL. В простой таблице он создал ту же схему, что и в базе данных SQL. Теперь проблема в том, что я не могу получить данные в мобильном приложении из этой таблицы. База данных SQL содержит записи в таблице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...